ubuntu

Ubuntu上Tomcat安全配置怎么做

小樊
33
2025-09-03 07:47:33
栏目: 智能运维

以下是Ubuntu上Tomcat的安全配置步骤,涵盖关键安全措施:

  1. 创建专用用户
    避免以root运行Tomcat,创建非特权用户(如tomcat)并设置目录权限:

    sudo useradd -m -d /opt/tomcat -s /bin/false tomcat  
    sudo chown -R tomcat:tomcat /opt/tomcat  
    
  2. 修改默认端口
    编辑/opt/tomcat/conf/server.xml,将HTTP/AJP端口改为非默认值(如8081/8009):

    <Connector port="8081" protocol="HTTP/1.1" ... />  
    <Connector port="8009" protocol="AJP/1.3" ... />  
    
  3. 禁用自动部署与删除默认目录
    关闭自动部署并删除webapps下默认应用,防止恶意代码注入:

    <Host name="localhost" appBase="/opt/tomcat/webapps" unpackWARs="false" autoDeploy="false" />  
    rm -rf /opt/tomcat/webapps/*  
    
  4. 隐藏版本信息
    修改server.xmlConnectorserver属性,或通过修改catalina.jar隐藏版本:

    <Connector ... server="Custom Server" />  
    
  5. 配置SSL/TLS加密

    • 生成密钥库(自签名或CA证书):
      keytool -genkeypair -alias tomcat -keyalg RSA -keystore /opt/tomcat/conf/keystore.jks -validity 365  
      
    • 编辑server.xml添加HTTPS连接器:
      <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"  
                 SSLEnabled="true" keystoreFile="/opt/tomcat/conf/keystore.jks" keystorePass="yourpassword" />  
      
  6. 权限与访问控制

    • 限制管理用户权限,仅允许必要角色访问(如manager-gui):
      编辑/opt/tomcat/conf/tomcat-users.xml,删除冗余用户或限制IP访问。
    • 配置web.xml启用HTTP Basic认证或表单认证,保护敏感路径。
  7. 防火墙与端口管理
    使用ufw限制仅允许必要端口(如8081、8443)访问:

    sudo ufw allow 8081/tcp  
    sudo ufw allow 8443/tcp  
    sudo ufw enable  
    
  8. 日志与监控
    定期审查/opt/tomcat/logs下的catalina.out等日志,监控异常访问。

  9. 其他安全优化

    • 禁用AJP连接器(若使用Nginx反向代理):注释server.xml中AJP相关配置。
    • 启用Cookie的HttpOnly属性,增强会话安全:
      编辑/opt/tomcat/conf/context.xml,添加<CookieProcessor sameSiteCookies="strict" />

验证配置:重启Tomcat后,通过浏览器访问HTTPS端口(如https://localhost:8443),确认安全连接生效。

以上步骤参考自,可根据实际环境调整。

0
看了该问题的人还看了