众妙之门

业精于勤,荒于嬉;行成于思,毁于随

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

Tomcat的默认工具manager配置,在很多的生产环境中由于基本用不到、或者是不太需要使用Tomcat默认的manager管理页面时一般都会把Tomcat的默认webapp下的内容给删除了,但是如果需要使用Tomcat默认的manager来管理项目时就需要保留相应的文件目录。在Tomcat中的webapps中有如下目录:docs(Tomcat本地说明文档)、examples(Tomcat相关的deamon示例)、host-manager(主机头管理工具)、manager(项目管理工具)、ROOT(Tomcat默认页),其中需要保留的是host-manager、manager、ROOT这3个目录而从Tomcat 6开始为了安全缺省条件下Tomcat的host-manager、manager是不能访问的(http 401拒绝),如需访问需要分配相关的角色权限,在这里就简单的说一说

 

首先,需要配置的配置文件是${catalina.home}/conf/tomcat-users.xml先给Tomcat访问相关的功能分配角色和配置登录验证用户密码,在最后的</tomcat-users>前面增加

 <role rolename ="manager-gui"/>
 <role rolename ="manager-status"/>
 <role rolename ="manager-script"/>
 <role rolename ="admin-gui"/>
 <role rolename ="admin-script"/>
 <user username ="manager" password ="manager" roles ="manager-gui,manager-status,manager-script,admin-gui,admin-script"/>

此处可以配置多个角色,不同版本Tomcat所拥有的角色都不同,在生产环境中建议修改复杂度高的Tomcat用户密码,另外不需要分配所有角色权限,需要够用的即可,如果不能访问会用相应的提示,在配置好后此时再打开Tomcat的首页还是无法进入Tomcat的管理页面的,可能是IP权限的问题。

 

因为从Tomcat 7开始安全机制下默认仅允许本机访问Tomcat,如需远程访问Tomcat的管理页面还需要配置相应的ip允许规则,配置manager的contest.xml可以在${catalina.home}/conf/Catalina/localhost目录下配置2个contest.xml文件,也可以写成一个,但是建议写成2个便于日常的权限管理,如下:

manager.xml:

<Context privileged="true" antiResourceLocking="false"
         docBase="${catalina.home}/webapps/manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^192.168.*$" />
</Context>

host-manager.xml: 

<Context privileged="true" antiResourceLocking="false"
         docBase="${catalina.home}/webapps/host-manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^192.168.*$" />
</Context>

其中allow中是填ip可以使用正则表达式匹配,在内网中建议写成匹配某某网段可以访问的形式,如此Tomcat的manager页面访问配置就完成了

 

posted on 2018-11-28 14:50  xuanm  阅读(19070)  评论(1编辑  收藏  举报