Tomcat对IP地址的访问限制策略分为黑明白和白名单两种方式,由RemoteAddrValve类实现。具体配置方法如下:
在<Host>与</Host>之间加入:
<!-- 白名单 --><Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192\.168\.1\.\d+"/>
<!-- 黑名单 --><Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="192\.168\.1\.\d+|127\.0\.0\.1"/>
其中,allow和deny属性的value即为允许或限制的IP地址,支持正则表达式,支持多值,多个值之间用竖线(|)分隔(Tomcat8 是竖线,其他版本不能确定)。
如果IP被限制访问,返回信息可以通过denyStatus属性配置,默认为403,配置如下:
<Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="192\.168\.1\.\d+|127\.0\.0\.1" denyStatus="403"/>
参考链接:http://tomcat.apache.org/tomcat-8.5-doc/config/host.html