Tomcat 在 Linux 上的权限设置要点
一 运行用户与最小权限原则
sudo groupadd tomcat && sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcatsudo chown -R tomcat:tomcat /opt/tomcat二 目录与文件权限矩阵
| 目录/文件 | 建议属主 | 建议权限 | 说明 |
|---|---|---|---|
| /opt/tomcat | tomcat:tomcat | 755 | 目录需可执行以进入 |
| /opt/tomcat/bin | tomcat:tomcat | 755 | 脚本需执行权限 |
| /opt/tomcat/conf | tomcat:tomcat | 644 | 配置需可读,避免被篡改 |
| /opt/tomcat/lib | tomcat:tomcat | 755 | 依赖 JAR 需可读/可执行 |
| /opt/tomcat/logs | tomcat:tomcat | 755 或 775(组写) | 运行期需写入日志 |
| /opt/tomcat/work | tomcat:tomcat | 755 或 775(组写) | JSP 编译与临时文件 |
| /opt/tomcat/temp | tomcat:tomcat | 755 或 775(组写) | 运行时临时文件 |
| /opt/tomcat/webapps | tomcat:tomcat | 755(必要时 775 组写) | 部署 WAR/解压内容;若热部署或应用需写自身目录,给组写 |
| 应用内日志目录(如 WEB-INF/_logs) | tomcat:tomcat 或 应用组 | g+w | 应用写业务日志 |
| 应用上传目录(如 /var/appdata) | tomcat:tomcat 或 应用组 | g+w | 仅授予必要目录写权限 |
sudo chmod -R 755 /opt/tomcatsudo chmod 644 /opt/tomcat/conf/*sudo chmod -R g+w /opt/tomcat/logs /opt/tomcat/work /opt/tomcat/temp三 以服务方式运行的权限配置
[Service]
User=tomcat
Group=tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
sudo systemctl daemon-reload && sudo systemctl start tomcat && sudo systemctl enable tomcatsudo systemctl status tomcat 与 tail -f /opt/tomcat/logs/catalina.out。四 安全加固与常见陷阱
sestatussudo chcon -R -t httpd_sys_content_t /opt/tomcatsudo chcon -R -t httpd_sys_rw_content_t /opt/tomcat/logs