Tomcat的shutdown端口安全处理

背景:

Tomcat部署在服务器上,有默认的shutdown端口(8005)和关闭命令(SHUTDOWN),及容易被攻击者通过TCP/IP连接该端口关闭Tomcat,导致业务中断。

优化方案:

更改默认的shutdown端口号和关闭命令,使攻击者难以猜解,增加攻击者通过shutdown请求攻击服务器和应用的难度。

具体措施:

1)在$CATALINA_HOME/conf/server.xml文件,更改默认端口为一个不确定的值,将shutdown命令改为其他大于8位的任意字符串,例如:

  <Server port="2724" shutdown="xxx!!ydtgertsfd34g"> // 这里shutdown命令,包含大小写字母、数字和特殊字符

2) 在$CATALINA_HOME/conf/server.xml文件,直接关闭shutdown端口,例如:

  <Server port="2724" shutdown="-1"> // 这里shutdown命令设置成-1或者直接删掉,代表禁用shutdown端口

    备注:必须在关闭Tomcat的情况下修改该参数,否则会导致Tomcat无法正常关闭。

检查方案:

执行如下命令检查是否使用默认的shutdown命令和默认端口,确保默认shutdown命令和端口号已正确更改:

$ cd $CATALINA_HOME/conf
$ grep 'shutdown[[:space:]]*=[[:space:]]*"SHUTDOWN"' server.xml
$ grep '<Server[[:space:]]\+[^>]*port[[:space:]]*=[[:space:]]*"8005 "' server.xml

 

posted @ 2021-03-01 11:00  yaohuimo  阅读(3838)  评论(0编辑  收藏  举报