Problemas de firewall al implementar Tomcat en CentOS


10

Estoy tratando de implementar un servidor Tomcat en un entorno CentOS, pero no recibe solicitudes.

La ejecución de startup.sh funciona correctamente y los registros muestran que Tomcat se está ejecutando

16-Dec-2016 13:36:58.440 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [http-nio-8080]
16-Dec-2016 13:36:58.444 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [ajp-nio-8009]
16-Dec-2016 13:36:58.445 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 14803 ms

Cuando se ejecuta netstat para verificar los puertos de escucha, se muestra como escucha

$netstat -atnp|grep LISTEN

tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      3321/java

Para omitir el firewall, agregué una regla personalizada en iptables.

$iptables -nL

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:8080
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50060
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50030
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50105
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50090
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50075
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:50070
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:123
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Agregué la regla en la parte superior para evitar el error de agregarla después del rechazo general. Iptables está activo ya que el servicio devuelve lo siguiente:

$service iptables status
Redirecting to /bin/systemctl status  iptables.service
● iptables.service - IPv4 firewall with iptables
Loaded: loaded (/usr/lib/systemd/system/iptables.service; enabled; vendor preset: disabled)
Active: active (exited) since Fri 2016-12-16 13:09:47 EST; 1h 45min ago
Main PID: 728 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/iptables.service

Sin embargo, la solicitud no llega a Tomcat, ya que los registros de acceso localhost están vacíos.

Firewalld no interfiere con la conexión porque dice estar deshabilitado:

$firewall-cmd --state
not running

¿Hay otras configuraciones de firewall que me faltan?


¿Qué versión de CentOS? ¿Qué sucede si ejecuta el estado del servicio iptables?
Anthony Fornito

Agregué el resto de las reglas de iptables. Mi versión es CentOS Linux versión 7.2.1511 (Core). Al llamar al servicio, el estado de iptables muestra iptables como activo.
Jared Rox

¿Intentaste desactivar el firewall? Haga esto para que pueda reducir el problema.
Vikelidis Kostas

OK, entonces el puerto del firewall está abierto y el servicio está escuchando. Pero, ¿qué sucede cuando intentas conectarte?
Michael Hampton

Respuestas:


10

Creo que lo que está pasando aquí es que estás mezclando tus tecnologías.

Tratar:

servicio iptables stop

Veo que aún obtienes la misma respuesta

Si lo hace, entonces debe eliminar iptables o firewalld

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.