2011-07-24 13 views
13

Tengo una aplicación ejecutándose en Tomcat y escuchando en el puerto 8080. Realicé los cambios de redireccionamiento en el nivel de Apache (httpd) para proporcionar a mis usuarios la capacidad de escribir solamente http://app en lugar de http://app:8080.¿Cómo bloquear el acceso al puerto de escucha de Tomcat y permitir solo el host local?

Ahora quiero bloque acceso completo a http://app:8080, por lo que los usuarios no serán capaces de llegar a http://app:8080.

¿Cómo puedo hacer eso?

+0

Esto suena contradictorio para mí, si 8080 es de hecho el puerto público. ¿Pretende que los usuarios se conecten a su aplicación a través del puerto normal (80), mientras redirigen 80 a 8080 internamente? – prusswan

+0

Sí. No quiero que 8080 esté expuesto en absoluto. –

+0

bien, esta es probablemente una pregunta por defecto del servidor, similar a algo como: http://serverfault.com/questions/140622/how-can-i-port-forward-with-iptables – prusswan

Respuesta

29

Puede bloquear un puerto con Iptables,

iptables -A INPUT/ -p tcp --dport 8080 -j DROP 

que es bastante segura en cuenta que es el nivel de sistema operativo,

o puede modificar configuración de Tomcat,

<Connector port="8080" address="127.0.0.1" maxHttpHeaderSize="8192" 

sólo para permitir localhost access 8080, (en caso de que desee utilizar la aplicación de administrador, etc.)

+1

Gracias Will, ese atributo para el tomcat Connector hizo el truco. Junto con la directiva ProxyPass de Apache que brinda una solución decente. –

0

Just for com Si usted desea configurar el conector AJP de manera similar o deshabilitarlo en server.xml

Cuestiones relacionadas