tomcat访问限制策略

tomcat访问限制策略

   张吉吉     2020年1月10日 01:55     2305    

这种配置方法是基于valve组件实现的IP访问控制。

以应用名称为cmsweb的web应用程序为例,具体操作步骤如下:

1、备份原有应用程序。

 

2、配置cmsweb的上下文环境文件。

(1)将xxx.xml文件拷贝到%TOMCAT_HOME%/conf/Catalina/localhost目录下 (注:根据实际安装路径)。

(2)重命名,将xxx.xml文件重命名为cmsweb(注:根据实际情况修改名称)。

(3)修改上一步重命名的xxx.xml的文件内容,如下图所示:

1.png

path:web应用的访问名称,本例为cmsweb。注意不要忽略cssweb前面“/”。

docBase:指向你WEB程序的本地路径。

workDir: docBase的实际路径再添加一级文件夹work,请参见上图。

Valve标签提供两种限制形式:一种为基于IP限制,另一种基于主机限制。如下:

①基于IP限制

className:org.apache.catalina.valves.RemoteAddrValve,此参数是基于IP限制。

allow:allow参数是允许访问IP地址,allow可填入多个IP地址,IP之间用英文逗号分隔即可。

⑴.只允许172.17.1.237访问:

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="172.17.1.237" deny=""/>,反之如果不允许此IP地址访问就把IP地址写到deny属性中。

⑵.只允许172.17.1.5-172.17.1.10网段访问:

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="172.17.1.[0-5],172.17.1.[6-10]" deny=""/>,反之如果不允许此网段IP访问就把IP地址写到deny属性中。

⑶.正则表达式表示:

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="172\.17\.1\.\d+" deny=""/>,反之如果不允许此网段IP访问就把IP地址写到deny属性中。

 

②基于主机限制

className:org.apache.catalina.valves.RemoteHostValve,此参数是基于主机限制。

allow:allow参数是允许访问主机,allow可填入多个主机,主机之间用英文逗号分隔即可。

例:

⑴.只允许主机名称为abc访问:

<Valve className="org.apache.catalina.valves.RemoteHostValve" allow="abc" deny=""/>,反之如果不允许此主机访问就把主机写到deny属性中。

⑵.正则表达式表示:

<Valve className="org.apache.catalina.valves.RemoteHostValve" allow="a\w+" deny=""/>,反之如果不允许此主机访问就把主机写到deny属性中。

 

3、记录访问日志配置

找到%TOMCAT_HOME%/conf/下context.xml(注:根据实际安装路径)文件,如下图:

2.png

<Valve className="org.apache.catalina.valves.AccessLogValve"

prefix="localhost_access_log." suffix=".txt" pattern="common"/>

pattern属性有两种参数一种为common,另一种为combined。

pattern:需要记录的请求/响应不同信息域的格式布局。如果是“common”或“combined,说明选择标准格式。common参数记录的日志信息量较少,combined参数记录信息量更为全面。一般情况下建议采用“common”以够了。

以上配置是为记录追溯访问痕迹,以便于查询访问信息及安全。

 

4、无权限访问跳转处理

找到%TOMCAT_HOME%/webapps/cmsweb/WEB-INF下web.xml(注:根据实际安装路径)文件,如下图:

3.png

找到图中此位置加入标记中代码即可,此代码是为无权限访问跳转界面做处理。

5、拷贝文件maintain.jsp到%TOMCAT_HOME%/webapps/cmsweb(注:根据实际安装路径)目录下。

6、安装配置完成后的测试。在浏览器地址栏输入该应用程序下的任意地址,如果访问终端IP未被限制访问,系统正常跳转。如果访问终端IP被限制访问,则系统跳转界面如下图:

4.png


文章评论

0

其他文章