terminal - users - tomcat manager
401 Error no autorizado al iniciar sesiĆ³n en Manager-App de Tomcat (19)
Cambiar el puerto de 8080 a 8088 en server.xml funcionó para mí. Reemplace el código a continuación
<Connector port="8088" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Estoy intentando iniciar sesión en la aplicación Manager en Tomcat 7.0.22 para Mac OS X 10.7. Aquí está el error que estoy recibiendo: http://f.cl.ly/items/421q1K3f1i0X1H1M181v/so.tiff
401 Unauthorized
You are not authorized to view this page. If you have not changed any configuration files, please examine the file conf/tomcat-users.xml in your installation. That file must contain the credentials to let you use this webapp.
For example, to add the manager-gui role to a user named tomcat with a password of s3cret, add the following to the config file listed above.
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
He agregado esto en mi tomcat-users.xml, aún así no se toma el mismo nombre de usuario / contraseña.
<tomcat-users>
<role rolename="manager-gui"/>
<user name="tomcat" password="s3cret" roles="standard,manager-gui"/>
</tomcat-users>
Compruebe las líneas exactas en server.xml
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
Navdeep
En Windows, tenía una variable de entorno CATALINA_HOME definida para otra instalación de Tomcat, de modo que estaba diciendo que estaba usando el script de inicio en la nueva carpeta de instalación. Así que solo eliminar CATALINA_HOME me solucionó el problema.
En mi caso, tuve varias secciones de <Engine><Host>...</Host></Engine>
en mi context.xml
y tuve que copiar y pegar el <Realm className="org.apache.catalina.realm.LockOutRealm">...</Realm>
en cada sección <Engine>...</Engine>
porque tuve la aplicación de administrador implementada en cada uno de estos hosts que formaban parte de un Engine
independiente.
La respuesta de @swapnil chaudhari sobre la restricción de la dirección IP en el META-INF/context.xml
también es útil, sin embargo, me pareció más beneficioso anular el Context
en el server.xml
mi servidor.
Al final, tengo algo como esto para cada uno de mis Engines
:
<Engine name="CatalinaMyUniqueEngine"
defaultHost="MyUniqueHost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="MyUniqueHost"
appBase="/opt/tomcat/webapps/MyUniqueHost"
unpackWARs="true" autoDeploy="true">
<Context path="/manager" privileged="true" antiResourceLocking="false"
docBase="manager">
<!-- Wider allowance than the default.
Or you can remove to allow all IPs, which probably isn''t
a good idea. -->
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127/.0/.0/.1|10/.244/./d+./d+" />
</Host>
</Engine>
docBase
es relativo a appBase
. En /opt/tomcat/webapps/MyUniqueHost
, tengo un enlace simbólico a la aplicación de administrador instalada por el administrador de paquetes de mi sistema (basado en Debian), que lo colocó en /usr/share/tomcat8-admin/manager
. Estos enlaces simbólicos me permiten usar la aplicación de administrador en todos mis Hosts
sin copiar la aplicación de administrador.
Es poco probable que alguien haya cometido el mismo error que yo, pero en caso de que tenga un par de versiones de tomcat (o haya modificado la instalación y tenga los archivos que necesita limpiar), asegúrese de estar en la carpeta correcta.
Estaba mirando el archivo de configuración en C: / tomcat7 / pero el Tomcat real que se estaba ejecutando estaba en C: / Archivos de programa / Apache Software Foundation / Tomcat 7.0 /
Estaba recibiendo exactamente el mismo error y solo comenzó a funcionar después de cambiar el puerto del conector de 8080 a 8081.
Estaba usando una contraseña compleja particular con muchos caracteres impares. Simplemente devuelva eso a la contraseña normal y funcionó bien.
Intenté agregar el nombre de usuario como tomcat en tomcat-users.xml que ya era un rol y no estaba funcionando. Luego di el nombre de usuario como administrador para y funcionó bien .. :)
Lo siento, tengo que preguntar lo obvio: ¿Reinició Tomcat?
Si eso no funciona, intente agregar "admin-gui" a sus roles:
<user name="tomcat" password="s3cret" roles="admin-gui,standard,manager-gui"/>
OK, yo también tuve este error. No se pudo encontrar el error, no se pudo encontrar el error, no se pudo encontrar el error. Mi bloque de "usuarios tomcat" se veía así.
<tomcat-users>
<role rolename="manager-gui"/>
<user name="tomcat" password="s3cret" roles="standard,manager-gui"/>
</tomcat-users>
FINALMENTE ENCONTRADO EL ERROR. Seguí editando el XML dentro del bloque de comentarios XML:
<!--
<tomcat-users>
<role rolename="manager-gui"/>
<user name="tomcat" password="s3cret" roles="standard,manager-gui"/>
</tomcat-users>
-->
DOH!
Por lo tanto: no olvide eliminar los "<! -" y "->".
Para agregar algo de claridad, aquí están los roles que necesita agregar a su conf / tomcat-users.xml a partir de Tomcat 7.x. Si desea conservar los comentarios, puede hacerlo, pero esto es todo lo que necesita (para iniciar sesión con admin / admin) en el archivo:
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="admin" password="admin" roles="manager-gui, manager-script, manager-jmx, manager-status, admin-gui, admin-script"/>
</tomcat-users>
Si estás en Tomcat 8, tal vez te falte lo siguiente. Luché con esto por un tiempo. Después de actualizar Realms y tomcat-users.xml, también debe editar las aplicaciones context.xml también.
"De forma predeterminada, las versiones más recientes de Tomcat restringen el acceso a las aplicaciones Manager y Host Manager a las conexiones provenientes del propio servidor. Ya que estamos instalando en una máquina remota, es probable que desee eliminar o modificar esta restricción. Para cambiar la dirección IP restricciones sobre estos, abra los archivos context.xml apropiados ".
Para la aplicación Manager
/webapps/manager/META-INF/context.xml
Para la aplicación Host-Manager -
/opt/tomcat/webapps/host-manager/META-INF/context.xml
Comente la siguiente sección para la válvula de la siguiente manera:
<Context antiResourceLocking="false" privileged="true" > <!--<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127/./d+/./d+/./d+|::1|0:0:0:0:0:0:0:1" />--> </Context>
Deberías estar todo listo después de esto.
Solo para agregar algo de información sobre la respuesta de @ David:
Si es como yo y SFTP para el host con cualquier usuario en un grupo que no sea tomcat (por ejemplo, root) y edite tomcat_users.xml
con algún editor genérico como gedit o VS Code, el grupo del archivo se cambiará al usuario usaste (probablemente porque se creó un nuevo archivo). Como abajo:
drwxr-x--- 2 root tomcat 4096 Jun 21 11:41 ./
drwxr-xr-x 9 root tomcat 4096 May 24 14:12 ../
-rw-r----- 1 root tomcat 13531 Apr 28 03:34 catalina.policy
-rw-r----- 1 root tomcat 7202 Apr 28 03:34 catalina.properties
-rw-r----- 1 root tomcat 1400 Apr 28 03:34 context.xml
-rw-r----- 1 root tomcat 1149 Apr 28 03:34 jaspic-providers.xml
-rw-r----- 1 root tomcat 2313 Apr 28 03:34 jaspic-providers.xsd
-rw-r----- 1 root tomcat 3850 Apr 28 03:34 logging.properties
-rw-r----- 1 root tomcat 7511 Apr 28 03:34 server.xml
-rw-r----- 1 root root 2342 Jun 21 11:41 tomcat-users.xml
-rw-r----- 1 root tomcat 2633 Apr 28 03:34 tomcat-users.xsd
-rw-r----- 1 root tomcat 170202 Apr 28 03:34 web.xml
Tal vez mi configuración inicial de Tomcat fue un poco casual ... Pero con el comportamiento anterior, Tomcat perderá el acceso al archivo editado. El resultado sería 401 no autorizado.
Hay una serie de opciones para solucionar el problema. Sin embargo, no estoy seguro de si alguno de ellos es la mejor práctica.
- Cambio de permiso después de la edición (sí claro ...).
- Nano y WinSCP no parecen sufrir el problema.
- SETGID: chmod g + s / conf_folder (no probado).
- Sigue esta respuesta
- Tal vez un editor que es consciente de permiso?
También asegúrese de haber configurado correctamente las variables de entorno TOMCAT_HOME y JAVA_HOME.
También me encontré con este problema. El contenido de mi tomcat-users.xml era correcto, pero Tomcat no pudo leer el archivo. Cambié el grupo del archivo a tomcat7, reinicié Tomcat y ¡voilà!
Aquí está el contenido de mi tomcat-users.xml:
<?xml version=''1.0'' encoding=''utf-8''?>
<tomcat-users>
<user username="admin" password="admin" roles="manager-gui, admin-gui" />
</tomcat-users>
Tomcat apagado
pegue a continuación los comentarios, complete el contenido en tomcat-users.xml y guárdelo
comience Tomcat
Ahora Build debería funcionar, lo hice para el sistema operativo Windows con Jenkins y git implementación a través de tomcat7
<?xml version="1.0" encoding="UTF-8"?>
-<tomcat-users> <role rolename="manager-gui"/> <role rolename="manager-script"/> <role rolename="manager-jmx"/> <role rolename="manager-status"/> <role rolename="admin-gui"/> <role rolename="admin-script"/> <user roles="manager-gui, manager-script, manager-jmx, manager-status, admin-gui, admin-script" password="admin" username="admin"/> </tomcat-users>
Tuve el mismo error y luego cambié la contraseña en users.xml. Se solucionó. Si usas algunos caracteres especiales como &. No funciona Quitarlo
Tuve que descomentar esto en server.xml:
<Resource name="UserDatabase" auth="Container"
type="org.apache.catalina.UserDatabase"
description="User database that can be updated and saved"
factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
pathname="conf/tomcat-users.xml" />
Pensé que solo estaba limpiando la configuración de una fuente de datos de ejemplo, pero estaba equivocado :)
Compruebe su navegador.
Estaba ejecutando Tomcat localmente en Windows e intentaba iniciar sesión usando Chrome. Ninguna de las sugerencias anteriores parecía funcionar. Finalmente, por un capricho, probé Firefox y obtuve el aviso de inicio de sesión. Reinicié Chrome y lo intenté de nuevo, y todavía nada. Aparece nuestra política de red con Chrome - probablemente bloqueando el diálogo de inicio de sesión emergente.