GUI del administrador de Tomcat

GUI del administrador de Tomcat

Tengo un servidor http://example.comcon un equilibrador de carga delante llamado https://example.netque realiza la descarga de SSL y redirige el tráfico al puerto 443 al 8080 en http://example.com.

El servidor example.comestá aislado en una red virtual y no se puede acceder a él desde Internet. El equilibrador de carga example.netpuede llegar example.coma Internet y está expuesto públicamente a él.

¿Cómo puedo configurar la interfaz web del administrador de Apache Tomcat 8 para que sea accesible solo desde http://example.com/managerpero no desde https://example.net/manager?

Respuesta1

No sé qué balanceador de carga estás usando, así que no puedo darle una configuración específica. Yo mismo tengo un servidor Tomcat de acceso público a través de Nginx como proxy.

nginx

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
}

También dejo que Nginx realice la terminación y compresión de SSL porque es mucho más fácil de administrar y configurar, y si luego quiero crear un equilibrio de carga, también puedo hacerlo con Nginx, así que no hay razón para hacerlo en 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

Luego, en Tomcat server.xml, agregue un nuevo host virtual para su sitio si aún no está presente.

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

En el archivo manager.xml para el proyecto del administrador, puede configurar quién puede acceder a la página HTML del administrador, ya sea con su dirección IP pública o con un servidor de salto, según recuerdo, como estándar, solo el host local puede conectarse al administrador HTML.

Personalmente, eliminé el proyecto del administrador de mi propia instalación para evitar problemas de seguridad relacionados con él si no se administra correctamente y no lo necesito.

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

Establezca un usuario y una contraseña para el administrador en tomcat-users.xml y estará listo.

Respuesta2

Configure Proxpass/Porxyalias en el servidor web. Debe realizar la configuración en HTTP(80) para hacer esto, pero la mejor práctica es que puede cargar en https con acceso restringido

información relacionada