Truy cập trang tomcat manager từ một host khác

Truy cập trang tomcat manager từ một host khác.

Mặc định, trang quản trị tomcat chỉ được truy cập từ local. Do đó khi chúng ta cài tomcat ở một máy khác như máy ảo, cloud hay một máy khác trong mạng lan… chúng ta cần phải cấu hình để cho phép truy cập được trang quản trị tomcat từ một host khác.

Truy cập trang tomcat manager từ một host khác

Ví dụ mình truy cập vào trang quản trị tomcat ở trên ip 192.168.32

Truy cập trang tomcat manager từ một host khác

Khi mình truy cập vào trang quản trị của tomcat như Manager App, Server Status hay Host Manager thì sẽ bị lỗi 403 như dưới đây.

Truy cập trang tomcat manager từ một host khác

Để truy cập được trang manager của tomcat ta cần phải cấu hình lại file context.xml nằm trong folder webapps/manager/META-INF của thư mục cài đặt tomcat.

Tìm đoạn sau:

<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" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

Và thay bằng đoạn sau:

<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" />
    <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
  -->
</Context>

Kết quả: khi truy cập trang tomcat manager nó sẽ yêu cầu nhập username, password:

Truy cập trang tomcat manager từ một host khác

Sau khi nhập username/password ta có thể truy cập trang quản trị tomcat một cách bình thường.

Truy cập trang tomcat manager từ một host khác

 

Okay, Done!

References:

https://tomcat.apache.org/tomcat-8.0-doc/setup.html

stackjava.com