Назад | Перейти на главную страницу

Как получить доступ к графическому интерфейсу менеджера Tomcat с другого компьютера?

У меня есть настройка tomcat 8 на ubuntu 16.04 на удаленном сервере. Я хочу получить доступ к приложению диспетчера графического интерфейса со своего локального компьютера. Посещая страницу / manager / html, я получаю 403-ю страницу с отказом в доступе со следующей информацией:

По умолчанию Host Manager доступен только из браузера, работающего на том же компьютере, что и Tomcat. Если вы хотите изменить это ограничение, вам необходимо отредактировать файл context.xml менеджера хоста.

и он говорит добавить в этот файл следующее:

/conf/tomcat-users.xml

<role rolename="manager-gui"/>
<user username="username" password="password" roles="manager-gui"/>

Я сделал это, перезапустил кота:

sudo systemctl restart tomcat

но я получаю ту же страницу с ошибкой.

Есть идеи, что мне не хватает?

Спасибо

Для Tomcat v8.5.4 и выше файл <tomcat>/webapps/manager/META-INF/context.xml было скорректировано:

<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>

Измените этот файл, чтобы прокомментировать Valve:

<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>

После этого обновите ваш браузер (перезапускать Tomcat не нужно), вы увидите страницу менеджера.

Для Tomcat версии 7 и выше.
Начиная с Tomcat 7, некоторые вещи изменились для повышения безопасности Tomcat. При редактировании tomcat-users.xml файл, вам нужно использовать существующий файл и оставить информацию xmlns для пользователей tomcat как есть и просто добавить:

<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
   version="1.0">
<role rolename="manager-gui"/>
<user username="SOMEUSER" password="YOURPASS" roles="manager-gui"/>

Обратите внимание, что менеджер теперь является менеджером-gui, а не просто менеджером. Есть несколько разных типов менеджеров:

manager-gui
manager-script
manager-status
manager-jmx

Последний шаг - разрешение доступа

По умолчанию Host Manager доступен только из браузера, работающего на том же компьютере, что и Tomcat. Если вы хотите изменить это ограничение, вам необходимо отредактировать tomcat / webapps / менеджер / META-INF / context.xml разрешить все IPS или только ваш.

Ниже приведена конфигурация, позволяющая всем IP-адресам получить доступ к менеджеру:

Заменить

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1"  

с участием

allow=".*"

Пример:

<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
 allow=".*" />
</Context>

Наконец - перезапустите tomcat, а затем перейдите на yourdomain.com/manager/html

Файл context.xml для редактирования, вызываемый страницей ошибки:

$ CATALINA_HOME / webapps / manager / META-INF / context.xml

предполагая, что CATALINA_HOME - это место установки tomcat. Это файл конфигурации контекста для веб-приложения менеджера. В этом файле вы обычно найдете:

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

В этой строке "позволятьПоле содержит разделенный вертикальной чертой список IP-адресов, которым разрешен доступ к веб-приложению менеджера. Добавьте в конце значения этого поля вертикальную черту и ваш IP-адрес.

После этого просто обновите свой браузер, перезапуск Tomcat не требуется.