众所周知,Debian 系统上的 Tomcat 部署一旦暴露在公网,面临的攻击面相当可观。很多管理员安装完 Tomcat 之后,默认配置一丢就觉得万事大吉,结果过不了多久就被扫描、被入侵、被挂马。其实只要在几个关键环节上多花点心思,就能把风险控制在合理范围内。下面从实操角度,把主要的安全措施梳理一遍。

安装和配置 Tomcat
最基础的一步,当然是用 apt-get 把 Tomcat 装好。装完别急着跑,先找到 /etc/tomcat7/tomcat-users.xml 文件,创建用户时要把角色和权限分配清楚——不该给的权限一律不给。另外,默认的管理页面(比如 manager、host-manager)如果不需要,直接在 /etc/tomcat7/server.xml 的 里把它们禁用掉。这一步能挡住不少自动化扫描工具。
强化身份验证和访问控制
密码是门锁,但很多人还在用 admin/admin。必须用强密码策略,所有账户都要复杂且唯一,最好定期更换。接下来是加密通信:配置 SSL/TLS,让所有数据在传输过程中都是密文,否则密码、Session ID 都在裸奔。最后别忘了网络层面的访问控制——通过防火墙规则或访问控制列表(ACL),只允许信任的 IP 段访问管理端口,其他人直接挡在门口。
更新和打补丁
这个不用多说,但常被忽略。使用 apt-get 定期更新系统软件包,Tomcat 自身也会收到安全补丁。如果自动更新机制不可用,那就手动盯紧安全公告,有补丁第一时间打上。历史教训一次次证明,很多攻击其实就利用早已修复的漏洞。
防火墙配置
用 iptables 或 ufw 把规则写清楚:只开放 HTTP、HTTPS 和 SSH 这几个必要端口,其余入站连接一律拒绝。管理后台的访问更要收紧——只允许特定 IP 地址(比如公司出口 IP)可以连上去,其他人想都别想。简单来说,越少暴露面,攻击者就越难下手。
安全审计和监控
攻击到了一定程度总会留下痕迹。让 Tomcat 的日志记录功能打开,详细记下每次访问和错误信息。如果资源允许,还可以引入专门的安全审计工具,对 Tomcat 实例进行嵌入式审计,实时发现异常行为。日志不能只存不看,定期回顾才能发现问题苗头。
其他安全措施
几个容易被忽视的细节:首先,替换掉默认页面,部署自己的网站内容,不给攻击者留下任何指纹信息。其次,直接删除 docs 和 examples 文件夹——这些示例应用往往是漏洞的重灾区。再次,如果不用远程管理,就删掉 webapps/manager 和 host-manager 文件夹;如果必须用,也要限制访问来源。另外,修改 Tomcat 的默认端口(比如从 8080 改成 8848),能让大部分自动化扫描绕道走。最后,隐藏 Tomcat 版本号,在 server.xml 里修改 server 属性,避免攻击者根据版本信息精准打击。
以上措施组合起来,能显著提升 Debian 上 Tomcat 的安全水平。当然,安全不是一次性的工作——定期审查策略、跟进新威胁、及时调整配置,才是长期安心的关键。
