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
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 đượ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:
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.
Okay, Done!
References: