Tomcat服务器本身运行不需要登录账号密码,管理后台默认也没有任何可用账号;你必须手动在tomcat-users.xml里添加角色和用户才能登录,网上流传的admin/admin并不是官方默认值。
Tomcat服务器登录账号密码的根本答案
很多刚接触Tomcat的人会直接搜“tomcat服务器登录账号密码是什么”,但这个问题要先拆成两层。
Tomcat作为Servlet容器,启动、停止、跑项目,本质上不需要登录,真正需要账号密码的地方,是它自带的管理页面,也就是Manager应用和Host Manager应用,官方从Apache Tomcat项目一开始,就没有为这些管理页面预置任何默认用户,你从官网下载的二进制包,conf/tomcat-users.xml里所有用户配置都是注释掉的,默认状态等于没有任何人能登录管理后台。
所以答案很直接:官方Tomcat没有默认登录账号密码,必须自己配置。
tomcat默认账号密码是多少:为什么没有统一默认值
官方发行包从未设置默认凭证
Tomcat官方为了降低公网暴露风险,长期保持一个原则:不在安装包里塞默认弱口令。tomcat-users.xml文件里虽然能看到<user username="admin" password="admin" .../>这样的示例,但它们前面都有<!--和-->注释符号,不会生效。
这与很多集成环境不同,部分老旧的Windows安装包、一键部署工具、教学虚拟机镜像,可能会为了方便直接帮你创建admin/admin或tomcat/tomcat,这些属于第三方定制行为,不能算Tomcat服务器默认账号密码。
为什么admin/admin传得很广
早期一些教程为了方便演示,会让学习者手动把admin/admin写进tomcat-users.xml,时间一长,很多文章直接把它说成“Tomcat默认账号密码”,如果你在2026年从官方渠道下载Tomcat 9或Tomcat 10,不配置就访问Manager页面,基本只会看到403状态码,而不是登录框。
Linux服务器Tomcat配置登录账号密码的完整步骤
下面以Linux服务器上常见的Tomcat 9为例,把配置过程完整梳理一遍。
找到Tomcat安装目录
如果是源码包解压安装,通常路径类似/opt/tomcat或/usr/local/tomcat,如果是apt或yum安装,配置文件可能在/etc/tomcat9/下,先确认主目录:
ls /opt/tomcat/conf/tomcat-users.xml
备份原配置文件
改之前先备份,避免XML写错导致Tomcat启动失败。
cp /opt/tomcat/conf/tomcat-users.xml /opt/tomcat/conf/tomcat-users.xml.bak
编辑tomcat-users.xml
在<tomcat-users>标签内、</tomcat-users>标签前,加入类似下面的内容:
<role rolename="manager-gui"/> <role rolename="admin-gui"/> <user username="tomcat" password="YourStr0ngPass" roles="manager-gui,admin-gui"/>
角色说明:manager-gui用于访问Manager管理页面,admin-gui用于访问Host Manager页面,如果只需要部署WAR包,给manager-gui就足够。
解除Manager远程访问限制
Tomcat 8.5及以上版本默认只允许本机访问Manager页面,如果你在远程Linux服务器上配置,还需要编辑:
/opt/tomcat/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" />
你可以把allow改成自己的固定IP或内网IP段,
allow="192.168.1.d+"
不建议直接删掉或改成允许所有IP,否则等于把Manager后台暴露在公网。
重启Tomcat并验证
/opt/tomcat/bin/shutdown.sh /opt/tomcat/bin/startup.sh
访问:
http://你的服务器IP:8080/manager/html
出现登录框,输入配置的用户名密码即可。
Tomcat管理页面登录不了怎么办:从403到200的排查顺序
很多人配置完仍然登录不了,或者干脆一直403,按下面顺序查,多数情况能定位。
用户角色没写对
Tomcat的Manager页面要求用户必须具有manager-gui角色,只配了manager-script或manager-status,浏览器访问/manager/html仍然会被拒绝,确认roles属性里包含manager-gui。
密码里含XML特殊字符
密码如果包含&、<、>、等字符,必须做XML转义,否则tomcat-users.xml

解析失败,Tomcat可能直接启动报错,建议密码先用字母、数字和常见符号组合,避免生僻特殊字符。
IP限制没有放开
Tomcat 8.5+的Manager默认只允许0.0.1访问,远程访问如果没改context.xml里的RemoteAddrValve,即使账号密码正确也看不到登录框,直接403。
云服务器安全组或防火墙没放行端口
如果用的是云服务器,8080端口需要在控制台安全组里放行,服务器内部防火墙也要检查:
sudo firewall-cmd --list-ports
或:
sudo iptables -L -n
Tomcat没有真正加载新配置
改完tomcat-users.xml必须重启Tomcat,只刷新页面不会生效,另外确认改的是正在使用的配置文件路径,有些系统存在多个Tomcat实例。
简米云服务器Tomcat登录账号密码设置与安全组放行
在简米云服务器上部署Tomcat,账号密码配置和普通Linux服务器完全一样,但网络层更容易踩坑。
安全组要放行8080端口
简米云默认安全组通常只开放22、80、443,Tomcat默认8080端口需要手动添加规则。
登录简米云控制台,进入ECS实例的安全组配置,添加入方向规则:
- 协议类型:TCP
- 端口范围:8080/8080
- 授权对象:建议先填自己办公网络出口IP,不要直接填0.0.0.0/0
如果管理后台只给自己用,授权对象用固定IP最稳妥。
不要把Manager页面暴露到公网
简米云服务器很多直接持有公网IP,一旦把Tomcat Manager配上弱口令并允许所有IP访问,攻击者可能在短时间内扫描到8080端口,Tomcat Manager本身支持上传WAR包部署应用,弱口令的后果不只是被看日志,而是整个服务器可能被控。
推荐改为非默认端口
可以在conf/server.xml里把8080改成不常用端口,比如18080:
<Connector port="18080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="18443" />
改完后同样需要在安全组放行新端口,这样能减少一部分扫描器对默认端口的批量探测。
tomcat弱口令修改方法:别让Manager变成后门
Tomcat弱口令不是小问题,Manager页面一旦被登录,攻击者可以通过部署恶意WAR包直接获取服务器权限,修改弱口令的方法并不复杂,关键是养成习惯。

直接修改tomcat-users.xml
如果当前已经在使用admin/admin、tomcat/tomcat这类弱口令,立即停掉Tomcat,按前面步骤改成至少12位以上的强密码。
检查是否有多个用户配置
有些服务器被入侵后,攻击者会自己添加一个高权限用户,修改弱口令时,顺手检查tomcat-users.xml里是否存在不认识的用户名:
<user username="unknown" password="unknown" roles="manager-gui"/>
发现异常用户直接删除,并检查webapps/目录下是否有可疑WAR包或目录。
修改后必须重启
Tomcat不会动态读取tomcat-users.xml,修改密码后执行:
/opt/tomcat/bin/shutdown.sh /opt/tomcat/bin/startup.sh
重启后旧密码立即失效。
用IP白名单替代单纯强密码
行业共识认为,管理后台的安全不能只依赖密码,即使密码再强,也不如直接限制来源IP,在context.xml中配置只允许内网或固定办公IP访问,安全性会明显提高一层。
常见问题Q&A
tomcat服务器登录账号密码忘记了怎么办
如果忘记Tomcat Manager的登录密码,无法直接从登录框找回,你需要登录服务器,编辑conf/tomcat-users.xml,找到对应用户的<user>标签,把password属性改成新密码,保存后重启Tomcat,如果连服务器SSH账号都忘了,那必须先通过云厂商控制台重置系统密码,再进去改Tomcat配置。
tomcat管理页面登录账号密码正确但一直403怎么处理
账号密码正确仍然403,通常不是密码问题,而是IP限制问题,检查webapps/manager/META-INF/context.xml中的RemoteAddrValve,确认你的访问IP在允许范围内,如果使用云服务器,同时检查安全组是否放行8080端口,最后确认用户是否拥有manager-gui角色,只有密码正确但角色缺失,同样会被拒绝。
tomcat服务器登录账号密码配置后需要重启服务器吗
不需要重启整个Linux服务器,只需要重启Tomcat服务本身,执行shutdown.sh后再执行startup.sh即可,部分系统服务方式部署的Tomcat,可以使用systemctl restart tomcat9,重启操作系统没有任何额外必要,反而会中断其他正在运行的服务。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/822431.html


评论列表(3条)
读了这篇文章,我深有感触。作者对访问的理解非常深刻,论述也很有逻辑性。内容既有理论深度,又有实践指导意义,确实是一篇值得细细品味的好文章。希望作者能继续创作更多优秀的作品!
@魂魂2670:这篇文章写得非常好,内容丰富,观点清晰,让我受益匪浅。特别是关于访问的部分,分析得很到位,给了我很多新的启发和思考。感谢作者的精心创作和分享,期待看到更多这样高质量的内容!
读了这篇文章,我深有感触。作者对访问的理解非常深刻,论述也很有逻辑性。内容既有理论深度,又有实践指导意义,确实是一篇值得细细品味的好文章。希望作者能继续创作更多优秀的作品!