远程管理 Debian 上的 Tomcat,通常有以下几种方式,按安全程度和常见场景来分:
sudo apt update
sudo apt install tomcat9
不同版本可能是
tomcat9 / tomcat10
编辑用户配置文件:
sudo nano /etc/tomcat9/tomcat-users.xml
添加如下内容(示例):
<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<user username="admin" password="强密码" roles="manager-gui,admin-gui"/>
默认只允许 localhost。
编辑:
sudo nano /var/lib/tomcat9/webapps/manager/META-INF/context.xml
注释或删除:
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
⚠️ 生产环境不建议直接暴露到公网
sudo systemctl restart tomcat9
http://服务器IP:8080/manager/html
ssh user@服务器IP
sudo systemctl status tomcat9
sudo systemctl start tomcat9
sudo systemctl stop tomcat9
sudo systemctl restart tomcat9
scp app.war user@服务器IP:/var/lib/tomcat9/webapps/
Tomcat 会自动解压部署。
推荐结构:
公网 → Nginx → Tomcat(内网)
location /manager/ {
proxy_pass http://127.0.0.1:8080/manager/;
proxy_set_header Host $host;
}
并启用:
sudo ufw allow 8080
ssh -L 8080:localhost:8080 user@服务器IP
然后本地访问:
http://localhost:8080/manager/html
| 场景 | 推荐方式 |
|---|---|
| 本地测试 | Manager 页面 |
| 生产环境 | SSH + 端口转发 |
| 多服务器 | Nginx + HTTPS |
| 自动化 | Ansible / CI 部署 |
如果你愿意,可以告诉我:
我可以给你一套更精确的安全方案。