marvinyang 发表于 2018-5-12 16:51:47

tomcat安全配置参考

0x01 基本配置1 删除默认目录   安装完tomcat后,删除$CATALINA_HOME/webapps下默认的所有目录文件rm -rf /srv/apache-tomcat/webapps/*2 隐藏tomcat版本信息修改$CATALINA_HOME/conf/server.xml,在Connector节点添加server字段,示例如下<Connectorport="8080" protocol="HTTP/1.1"            connectionTimeout="20000"               redirectPort="8443"/>               server="WVS1.1"    <!-- A "Connector" using theshared thread pool-->3 自定义错误页面修改tomcat/conf/web.xml,自定义40x、50x等容错页面,防止信息泄露。(1)配置tomcat/conf/web.xml文件:在最后</web-app>一行之前加入以下内容:<error-page> <error-code>404</error-code><location>/noFile.htm</location></error-page>……………<error-page><exception-type>java.lang.NullPointerException</exception-type><location>/error.jsp</location> </error-page>       第一个<error-page></error-page>之间的配置实现了将404未找到jsp网页的错误导向noFile.htm页面,也可以用类似方法添加其多的错误代码导向页面,如403,500等。          第二个<error-page></error-page>之间的配置实现了当jsp网页出现java.lang.NullPointerException导常时,转向error.jsp错误页面,还需要在第个jsp网页中加入以下内容:<%@ pageerrorPage="/error.jsp" %>典型的error.jsp错误页面的程序写法如下:<%@ pagecontentType="text/html;charset=GB2312"%><%@ pageisErrorPage="true"%><html><head><title>错误页面</title></head><body>出错了:</p> 错误信息: <%= exception.getMessage()%><br>Stack Trace is :<pre><font color="red"><%java.io.CharArrayWritercw = new java.io.CharArrayWriter();java.io.PrintWriterpw = new java.io.PrintWriter(cw,true);exception.printStackTrace(pw);out.println(cw.toString());%></font></pre></body></html>当出现NullPointerException异常时tomcat会把网页导入到error.jsp,且会打印出出错信息。(2)重新启动tomcat服务4 更改tomcat服务器默认端口1、参考配置操作(1)修改tomcat/conf/server.xml配置文件,更改默认管理端口到8800 <Connectorport="8888"maxHttpHeaderSize="8192"maxThreads="150" minSpareThreads="25"maxSpareThreads="75"、enableLookups="false"redirectPort="8443" acceptCount="100" connectionTimeout="300"disableUploadTimeout="true" />(2)重启tomcat服务 2、补充操作说明② 备注事项,登陆http://127.0.0.1:8888,进行验证配置。0X02 安全配置1 用户权限      在服务器设备权限配置范围内,根据我们的业务需要,配置其所需的最小权限。同时应删除或锁定与设备运行、维护等工作无关的账号。例如admin, 666等。还有使用单独的账号允许,不能使用与系统账号一样的账号密码。1、Tomcat 4.x和5.x版本用户角色分为:role1,tomcat,admin,manager四种。role1:具有读权限;tomcat:具有读和运行权限;admin:具有读、运行和写权限;manager:具有远程管理权限。Tomcat 6.0.18版本只有admin和manager两种用户角色,且admin用户具有manager管理权限。2、Tomcat 4.1.37和5.5.27版本及以后发行的版本默认除admin用户外其他用户都不具有manager管理权限。① 建议配置编辑tomcat/conf/tomcat-user.xml配置文件,修改用户角色权限 ,例如<tomcat-users><!--<role rolename="tomcat"/><role rolename="role1"/><user username="tomcat"password="tomcat" roles="tomcat"/><user username="both"password="tomcat" roles="tomcat,role1"/><user username="role1"password="tomcat" roles="role1"/>--></tomcat-users>② 登陆http://ip:8080/manager/html页面,使用tomcat账号进行本地登录,进行验证配置。2 口令安全要求   对于采用静态口令认证技术的设备,口令长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少2类。① 建议配置 在tomcat/conf/tomcat-user.xml配置文件中设置密码<userusername=”root” password=”root123456” roles=”admin”>② 备注事项      检查tomcat/conf/tomcat-user.xml配置文件中的帐号口令是否符合移动通过配置口令复杂度要求。(1)人工检查配置文件中帐号口令是否符合;(2)使用tomcat弱口令扫描工具定期对Tomcat Web服务器进行远程扫描,检查是否存在弱口令帐号。3 禁止列目录(高版本默认已禁止)① 建议配置(1) 编辑tomcat/conf/web.xml配置文件, 注意原文件和下面的区别。<init-param>      <param-name>listings</param-name>       <param-value>false</param-value>    </init-param> (2)重新启动tomcat服务② 备注事项当WEB目录中没有默认首页如index.html,index.jsp等文件时,不会列出目录内容,直接访问http://ip:8800/webadd4 定时账户自动登出       对于类似web具备字符交互界面的设备,应支持定时账户自动登出。登出后用户需再次登录才能进入系统。① 建议配置编辑tomcat/conf/server.xml配置文件,修改为30秒<Connectorport="8080"maxHttpHeaderSize="8192"maxThreads="150" minSpareThreads="25"maxSpareThreads="75"、enableLookups="false"redirectPort="8443" acceptCount="100" connectionTimeout="6000"disableUploadTimeout="true" />② 备注事项   登陆tomcat默认页面http://ip:8080/manager/html ,使用管理账号登陆,10分钟无操作或者关闭浏览器自动退出。5 启用cookie的HttpOnly属性修改$CATALINA_HOME/conf/context.xml,添加<ContextuseHttpOnly="true">配置cookie的secure属性,在web.xml中sesion-config节点配置cooker-config,此配置只允许cookie在加密方式下传输。
    <session-config>       <session-timeout>30</session-timeout><cookie-config>                              <secure>true</secure>                         </cookie-config>     </session-config>
6 AJP端口管理         AJP是为 Tomcat 与 HTTP 服务器之间通信而定制的协议,能提供较高的通信速度和效率。如果tomcat前端放的是apache的时候,会使用到AJP这个连接器。前端如果是由nginx做的反向代理的话可以不使用此连接器,因此需要注销掉该连接器。

sjwayrhz 发表于 2018-8-17 13:03:46

不错

sjwayrhz 发表于 2018-11-5 12:59:16

要是可以贴markdown 模式就好了。
页: [1]
查看完整版本: tomcat安全配置参考