Tomcat安全加固

来源:互联网 发布:炭知天下 编辑:程序博客网 时间:2024/05/22 15:48

参考:
http://netexr.blog.51cto.com/2480285/1259882

升级到最新稳定版

老生常谈

从监听端口上加固

仅在本地监听

如果Tomcat不需要对外提供服务,则监听在本地回环,前面放Nginx。如果需要对外提供访问,比如一个Nginx挂多个Tomcat,那么在服务器上用iptables只允许负载均衡器的IP来访问

关闭8009端口

现在我们一般不用Apache通过AJP协议来调用Tomcat了,所以AJP端口可以关闭。

    <!--    <Connector port="8009" address="127.0.0.1" protocol="AJP/1.3" redirectPort="8443" />    -->

8005端口

在新版的Tomcat中,SHUTDOWN端口默认就是监听在127.0.0.1的,所以不需要修改。如果还想加固,那可以把SHUTDOWN换成其它的字符串。

<Server port="8005" shutdown="YourString">

查看端口占用情况

➜  /Applications/VMware Fusion.app/Contents/Library  tcp|grep 8005                                                                                  [14:54:55]java                        80543 caiqiqi   61u  IPv6 0x10fbff4a2ad96bd9      0t0  TCP 127.0.0.1:8005 (LISTEN)➜  /Applications/VMware Fusion.app/Contents/Library  tcp|grep 8080                                                                                  [14:55:00]java                        80543 caiqiqi   49u  IPv6 0x10fbff4a2ad96159      0t0  TCP 127.0.0.1:8080 (LISTEN)

自定义错误页面,隐藏Tomcat信息

编辑conf/web.xml,在标签上添加以下内容:

<error-page>    <error-code>404</error-code>    <location>/404.html</location></error-page><error-page>    <error-code>500</error-code>    <location>/500.html</location></error-page>

禁用Tomcat管理页面

删除webapps目录下Tomcat原有的所有内容

删除conf/Catalina/localhost/下的host-manager.xml和manager.xml这两个文件

用普通用户启动Tomcat

禁止Tomcat列目录

这在新版本中默认就是禁用的,可以在conf/web.xml中编辑

<init-param>    <param-name>listings</param-name>    <param-value>false</param-value></init-param>