Es difícil dar sentido a la documentación de Tomcat y al mirar server.xml encontrará una ensalada de puertos que puede ser difícil de entender porque en realidad no se explica adecuadamente, o extensamente, en la documentación.
Por ejemplo, esta línea en el archivo de configuración server.xml
<Connector port="8345" protocol="AJP/1.3" redirectPort="9875" />
Y aquí puedes encontrar otro puerto de redireccionamiento:
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Entiendo lo que hace el puerto del conector. En el primer caso, lo usa para crear un trabajador en apache y enviarlo allí, en el segundo abre un puerto para acceder directamente a tomcat. Sin embargo, cuando se trata del puerto de redireccionamiento, las cosas se vuelven confusas.
Aquí está la explicación dada por la documentación de tomcat para el puerto ajp:
Si este conector admite solicitudes que no son SSL, y se recibe una solicitud para la que se requiere transporte SSL, Catalina redirigirá automáticamente la solicitud al número de puerto especificado aquí.
Siempre elijo un puerto de redireccionamiento aleatorio sobre 1024 y funciona,
¿Pero cuándo entraría esto en práctica? ¿Cómo sabe cuándo una solicitud requiere transporte SSL?
Tengo un servidor satelital que ejecuta un módulo tomcat. Este módulo entra en vigor al redirigir el tráfico al conector ajp con apache desde el servidor principal y viceversa.
En el servidor principal, https se aplica en apache. ¿Significa esto que todas las solicitudes se envían al servidor satelital encriptadas o en texto plano? Sé que si accedo al servidor satelital a través del puerto 8080 no está encriptado, pero me pregunto si esto también se aplica al tráfico que se redirige al servidor principal y dónde entra en vigencia este puerto de redireccionamiento.
iptables
también funciona bien para redirigir el tráfico a Tomcat, entre otros enfoques .