Tomcat 관리자 GUI

Tomcat 관리자 GUI

SSL 오프로드를 수행하고 트래픽을 포트 443에서 8080으로 리디렉션하는 이름의 로드 밸런서가 있는 서버가 http://example.com앞에 있습니다 .https://example.nethttp://example.com

서버는 example.com가상 네트워크에 격리되어 있으며 인터넷에서 연결할 수 없습니다. 로드 밸런서는 example.net인터넷에 접속할 수 example.com있고 인터넷에 공개적으로 노출됩니다.

http://example.com/manager에서만 연결할 수 있고 에서 연결할 수 없도록 Apache Tomcat 8 관리자 웹 인터페이스를 설정하려면 어떻게 해야 합니까 https://example.net/manager?

답변1

어떤 로드 밸런서를 사용하고 있는지 모르기 때문에 특정 구성을 제공할 수 없습니다. 나 자신도 프록시인 Nginx를 통해 공개적으로 액세스할 수 있는 Tomcat 서버를 가지고 있습니다.

엔진스

upstream websites {
    server 192.168.x.x:8080 fail_timeout=0;
}

server {
    listen 80;
    listen 443 ssl;
    server_name www.example.com example.com;

    location / {
            proxy_pass http://websites/;
            include proxy_params;
    }

    #SSL configuration here
}

또한 관리 및 설정이 훨씬 쉽기 때문에 Nginx가 SSL 종료 및 압축을 수행하도록 허용하고 나중에 로드 밸런스를 생성하려는 경우 Nginx를 사용하여 수행할 수도 있으므로 Tomcat에서 수행할 이유가 없습니다. https://www.digitalocean.com/community/tutorials/how-to-add-the-gzip-module-to-nginx-on-ubuntu-14-04

https://letsencrypt.org/

https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-ubuntu-16-04

Tomcat server.xml보다 아직 존재하지 않는 경우 사이트에 대한 새 가상 호스트를 추가하십시오.

<Host name="www.example.com"  appBase="webapps" unpackWARs="true" autoDeploy="true">
    <Alias>example.com</Alias>

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
        prefix="test_example_access_log" suffix=".txt"
        pattern="%h %l %u %t &quot;%r&quot; %s %b" />
</Host>

관리자 프로젝트의 Manager.xml 파일보다 관리자 HTML 페이지에 액세스할 수 있는 사람을 설정할 수 있습니다. 공용 IP 주소 또는 점프 호스트로 설정할 수 있습니다. 표준으로 localhost만 HTML 관리자에 연결할 수 있다는 점을 기억해두시기 바랍니다.

개인적으로 나는 올바르게 관리되지 않고 필요하지 않은 경우 관련된 보안 문제를 피하기 위해 내 설치에서 관리자 프로젝트를 삭제했습니다.

<Valve className="org.apache.catalina.valves.RemoteAddrValve"
        allow="192.168.1.*" />

tomcat-users.xml에서 관리자의 사용자와 비밀번호를 설정하면 됩니다.

답변2

웹서버에서 Proxpass/Porxyalias를 구성합니다. 이를 수행하려면 HTTP(80)에서 구성을 만들어야 하지만 가장 좋은 방법은 제한된 액세스로 https에서 로드할 수 있다는 것입니다.

관련 정보