Я не могу войти в приложение 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