美文网首页Java web安全
Tomcat安全加固与防护实践(6个方法)

Tomcat安全加固与防护实践(6个方法)

作者: 安全牛课堂牛油果 | 来源:发表于2019-07-31 18:19 被阅读0次

    这次的安全加固,Tomcat是重灾区。所以整理下Tomcat的安全加固。

    Tomcat是一个HTTP服务器,是Sun透过Java Community Process开发的、对广泛使用的Servlet和JavaServer Page(JSP)技术的正式参考实作。Servlet和JSP技术用于建构HTTP服务器应用程序。虽然Servlet技术中加入了许多特性(包括存取安全性、Session管理和执行绪控制)。JSP技术提供了一种处理动态生成的 HTML 页面的简便方法,这些 HTML 页面被直接编译成 Servlet 以用于快速执行时作业。Tomcat除了上述的两种技术保障安全之外,还可以通过配置Tomcat的参数以增加安全性。

    在默认配置下其存在一定的安全隐患,可被恶意攻击。以下是一些安全加固的方法:

    升级到最新稳定版,这个是老生常谈了。目前Tomcat支持6.0和7.0两个版本。

    1) 出于稳定性考虑,不建议进行跨版本升级,如果之前是6.0系列版本,最好还是使用该系列的最新版本。

    2) 在统计目录部署最新的Tomcat,将conf目录下的文件和webapp复制过来,之后修改server.xml,修改监听端口进行测试,无误后关闭Tomcat并改回端口。接下来就可以在发布的时候停止旧的Tomcat并开启新的Tomcat,至此升级完毕。

    从监听端口上加固

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

    <Connector port=”8080″ address=”127.0.0.1″

    maxHttpHeaderSize=”8192″ URIEncoding=”UTF-8″

    maxThreads=”500″ minSpareThreads=”25″ maxSpareThreads=”75″

    enableLookups=”false” redirectPort=”8443″ acceptCount=”100″

    connectionTimeout=”10000″ disableUploadTimeout=”true” />

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

    <!–

    <Connector port=”8009″ protocol=”AJP/1.3″ redirectPort=”8443″ />

    –>

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

    <Server port=”8005″ shutdown=”YourString”>

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

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

    <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管理页面

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

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

    用普通用户启动Tomcat

    useradd -M -s /bin/false tomcatchown -R tomcat.tomcat /usr/local/src/apache-tomcat-6.0.37su – tomcat -c “/usr/local/src/apache-tomcat-6.0.37/bin/catalina.sh start”

    禁止Tomcat列目录

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

    <init-param>

    <param-name>listings</param-name>

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

    完整内容推荐:Tomcat安全加固与防护实践

    课程地址:https://www.aqniukt.com/course/8091

    相关文章

      网友评论

        本文标题:Tomcat安全加固与防护实践(6个方法)

        本文链接:https://www.haomeiwen.com/subject/mltxdctx.html