Проблема з брандмауером під час розгортання Tomcat у CentOS


10

Я намагаюся розгорнути сервер Tomcat в середовищі CentOS, але він не отримує запитів.

Виконання startup.sh працює належним чином, а журнали показують, що tomcat працює

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

Під час запуску netstat для перевірки портів прослуховування він відображається як прослуховування

$netstat -atnp|grep LISTEN

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

Для того, щоб пропустити брандмауер, я додав власні правила в 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

Я додав правило зверху, щоб уникнути помилки додавання його після загального відхилення. Iptables активний, коли сервіс повертає наступне:

$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

Однак запит не надходить до Tomcat, оскільки журнали доступу localhost порожні.

Firewalld не перешкоджає з’єднанню, оскільки він вважає вимкненим:

$firewall-cmd --state
not running

Чи є інші налаштування брандмауера, які мені не вистачає?


Яка версія CentOS? Що станеться, якщо ви запустили статус iptables служби?
Ентоні Форніто

Я додав решту правил iptables. Версія Mi - це випуск CentOS Linux 7.2.1511 (Core). Виклик стану iptables служби показує iptables як активні.
Джаред Рокс

Ви намагалися відключити брандмауер? Зробіть це, щоб ви могли звузити проблему.
Вікелідіс Костас

Гаразд, отже порт брандмауера відкритий і служба слухає. Але що відбувається, коли ви намагаєтесь підключитися до нього?
Майкл Хемптон

Відповіді:


10

Я думаю, що тут відбувається те, що ви змішуєте свої технології.

Спробуйте:

сервісні iptables зупиняються

Побачимо, ти ще отримаєш таку ж відповідь

Якщо це зробити, вам потрібно видалити або iptables, або firewalld

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.