Problemi con il firewall durante la distribuzione di Tomcat su CentOS


10

Sto cercando di distribuire un server Tomcat in un ambiente CentOS, ma non sta ricevendo richieste.

L'esecuzione di startup.sh funziona correttamente e i registri mostrano che tomcat è in esecuzione

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

Quando si esegue netstat per controllare le porte di ascolto, viene mostrato come ascolto

$netstat -atnp|grep LISTEN

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

Per saltare il firewall, ho aggiunto una regola personalizzata su 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

Ho aggiunto la regola in cima per evitare l'errore di aggiungerla dopo il rifiuto generale. Iptables è attivo poiché il servizio restituisce quanto segue:

$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

Tuttavia, la richiesta non raggiunge Tomcat, poiché i log di accesso localhost sono vuoti.

Firewalld non interferisce con la connessione perché afferma di essere disabilitato:

$firewall-cmd --state
not running

Ci sono altre impostazioni del firewall che mi mancano?


Quale versione di CentOS? Cosa succede se si esegue lo stato del servizio iptables?
Anthony Fornito,

Ho aggiunto il resto delle regole di iptables. La versione Mi è CentOS Linux versione 7.2.1511 (Core). Chiamando il servizio iptables lo stato mostra iptables come attivo.
Jared Rox,

Hai provato a disabilitare il firewall? Fallo in modo da poter restringere il problema.
Vikelidis Kostas,

OK, quindi la porta del firewall è aperta e il servizio è in ascolto. Ma cosa succede quando provi a connetterti?
Michael Hampton,

Risposte:


10

Penso che quello che sta succedendo qui sia che stai mescolando le tue tecnologie.

Provare:

il servizio iptables si ferma

Vedi che hai ancora la stessa risposta

In tal caso, è necessario rimuovere iptables o firewalld

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.