Problemy z zaporą ogniową podczas wdrażania Tomcat w CentOS

10

Próbuję wdrożyć serwer Tomcat w środowisku CentOS, ale nie otrzymuje żądań.

Wykonywanie pliku startup.sh działa poprawnie, a dzienniki pokazują, że tomcat jest uruchomiony

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

Po uruchomieniu netstat w celu sprawdzenia portów nasłuchujących, jest wyświetlany jako nasłuchiwanie

$netstat -atnp|grep LISTEN

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

Aby pominąć zaporę, dodałem niestandardową regułę w 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

Dodałem regułę u góry, aby uniknąć błędu dodania jej po ogólnym odrzuceniu. Iptables jest aktywne, ponieważ usługa zwraca następujące elementy:

$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

Jednak żądanie nie dociera do Tomcat, ponieważ dzienniki dostępu localhost są puste.

Firewalld nie zakłóca połączenia, ponieważ twierdzi, że jest wyłączone:

$firewall-cmd --state
not running

Czy brakuje mi innych ustawień zapory?

Jared Rox
źródło
Jaka wersja CentOS? Co się stanie, jeśli uruchomisz status usługi iptables?
Anthony Fornito,
Dodałem resztę reguł iptables. Wersja Mi to CentOS Linux wydanie 7.2.1511 (Core). Wywołanie usługi status iptables pokazuje, że iptables jest aktywne.
Jared Rox,
Czy próbowałeś wyłączyć zaporę ogniową? Zrób to, aby zawęzić problem.
Vikelidis Kostas
OK, więc port zapory jest otwarty, a usługa nasłuchuje. Ale co się stanie, gdy spróbujesz się z nim połączyć?
Michael Hampton

Odpowiedzi:

10

Myślę, że chodzi o to, że miksujesz swoje technologie.

Próbować:

Serwis iptables zatrzymuje się

Zobacz, że nadal otrzymujesz tę samą odpowiedź

Jeśli to zrobisz, musisz usunąć iptables lub firewalld

Anthony Fornito
źródło