Я не могу войти в приложение Tomcat Manager
Я прочитал много тем в stackoverflow для решения моей проблемы, но никто не был полезен.
Когда я попытался войти в приложение Manager ([http://localhost: 8080/manager/html] [1]), используя множество разных конфигураций, но я всегда получал 401 Unauthorized после попытались войти в систему, используя учетные данные прав.
Я перезапустил сервер tomcat пару раз.
Это моя последняя конфигурация в conf/tomcat-users.xml
<?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>
Это часть, связанная с tomcat-пользователями в server.xml
<GlobalNamingResources>
<!-- Editable user database that can also be used by
UserDatabaseRealm to authenticate users
-->
<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" />
</GlobalNamingResources>
Это моя конфигурация:
Apache Tomcat: версия 7.0.40 64 бит
Протестировано на Chrome 26
Если есть что-то еще полезное, что я забыл, дайте мне знать.
Спасибо заранее
Ответы
Ответ 1
От хвоста [tomcat-root]/logs/catalina.out, я заметил, что вы используете заблокированное имя пользователя "admin"
06-May-2014 16:47:41.828 WARNING [http-nio-192.168.0.51-8080-exec-6] org.apache.catalina.realm.LockOutRealm.authenticate An attempt was made to authenticate the locked user "admin"
Вы должны попробовать с лучшим (не догадающимся) именем пользователя.
<role rolename="manager-gui"/>
<user username="TomcatAdmin" password="secpa55wd" roles="manager-gui"/>
Это определенно должно работать для вас.
Ответ 2
Конфигурация выглядит отлично для меня. пожалуйста, попробуйте ниже tomacat-users.xml.
<tomcat-users>
<user name="admin" password="admin" roles="admin-gui,manager-gui" />
</tomcat-users>
Перезагрузите сервер после изменения.
Ответ 3
Решения выше, вероятно, решили вашу проблему. Заблокированное решение пользователя опрокидывало меня на мою проблему.
Что-то странное я заметил... Не знаю, как это произошло.
После установки нового tomcat7 я закончил с файлом "tomcat-users.xml", принадлежащим корню пользователя и группе root.
Я узнал, что catalina.out содержит несколько строк, таких как "javax.naming.NamingException:/var/lib/tomcat7/conf/tomcat-users.xml(Permission denied)"
После изменения права собственности на файл пользователю "root" и группе "tomcat7" была исправлена ошибка входа в систему.
Ответ 4
Если вы попробуете любой из других ответов, и тогда нет никакой разницы, вам может понадобиться очистить Tomcat, а затем повторить попытку. Это мои чистые команды (не знаю, насколько они общие):
rm -R $TOMCAT_HOME/work/Catalina/<host>/*
rm -rf $TOMCAT_HOME/webapps/<app name>
Ответ 5
В моем случае у пароля были специальные символы, которые должны быть закодированы в формате XML до добавления в файл /opt/tomcat/conf/tomcat-users.xml
.
Инструментом, который я использовал для кодирования, был https://coderstoolbox.net/string/#!encoding=xml&action=encode&charset=us_ascii