定期检查Apache Tomcat官方网站的安全公告,及时下载并安装最新补丁,修复已知漏洞。例如2025年10月披露的CVE-2025-55752(RewriteValve路径遍历漏洞)、CVE-2025-55754(ANSI转义序列注入漏洞)、CVE-2025-61795(多文件上传DoS漏洞)及CVE-2025-48989(HTTP/2 DoS漏洞),均需升级至对应修复版本(如Tomcat 11.0.11、10.1.45、9.0.109及以上),避免攻击者利用漏洞进行远程代码执行、控制台操纵或服务中断。
tomcat-users.xml文件,删除与运维无关的默认账号(如tomcat1),仅保留必要角色(如admin、manager),并设置强密码(长度≥8位,包含数字、大小写字母、特殊符号)。tomcat),通过chown -R tomcat:tomcat /path/to/tomcat修改Tomcat目录权限,避免以root用户运行Tomcat,降低权限提升风险。server.xml中的Connector配置,添加server="CustomServer/1.0"属性,或在ServerInfo.properties中覆盖版本信息,防止攻击者通过版本号针对性攻击。server.xml的RemoteAddrValve或Linux防火墙(iptables/firewalld)限制Tomcat端口的访问来源,仅允许可信IP(如运维人员IP)访问,例如:<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192\.168\.1\.\d+" deny=""/>
或使用firewall-cmd命令:firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="8080" accept' --permanent。conf/web.xml文件,设置autoDeploy="false"和unpackWARs="false",防止攻击者通过上传恶意WAR文件实现自动部署。webapps目录下的docs、examples、host-manager、manager、ROOT等默认应用,减少潜在攻击面(如host-manager可被用于管理主机配置)。server.xml中注释或删除对应配置(如<Connector port="8080" protocol="HTTP/1.1" ...>中的protocol属性调整为org.apache.coyote.http11.Http11NioProtocol),避免组件漏洞被利用。keytool生成密钥库(keytool -genkey -alias tomcat -keyalg RSA -keystore /path/to/keystore.jks),修改server.xml添加HTTPS连接器:<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
SSLEnabled="true" scheme="https" secure="true"
keystoreFile="/path/to/keystore.jks" keystorePass="your_password"
clientAuth="false" sslProtocol="TLS"/>
并通过web.xml强制HTTP重定向至HTTPS,确保数据传输加密。conf/context.xml或web.xml,为会话Cookie添加HttpOnly(防止JavaScript访问)和Secure(仅通过HTTPS传输)标志,减少会话劫持风险:<Context useHttpOnly="true">
<CookieProcessor sameSiteCookies="Strict"/>
</Context>
或通过web.xml配置:<session-config>
<cookie-config>
<http-only>true</http-only>
<secure>true</secure>
</cookie-config>
</session-config>
```。
conf/logging.properties文件,调整日志级别为FINE或ALL,记录访问、错误及安全相关事件(如org.apache.catalina.access_log),确保可追溯异常行为。ELK Stack(Elasticsearch+Logstash+Kibana)、Splunk等工具集中分析Tomcat日志,监控异常请求(如大量404错误、PUT请求、高频访问),及时发现潜在攻击。在Tomcat前端部署WAF(如ModSecurity、Nginx WAF),过滤恶意请求(如SQL注入、XSS、路径遍历),阻止攻击流量到达Tomcat服务器。例如,ModSecurity可通过规则集(如OWASP Core Rule Set)识别并拦截常见Web攻击,提升应用层安全性。
OpenVAS、Nessus等工具定期扫描Tomcat服务器及应用,检测未修复的漏洞(如旧版本组件、配置错误)。