Проблема с брандмауэром при развертывании 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, поскольку журналы доступа на локальном хосте пусты.

Firewalld не вмешивается в соединение, потому что он утверждает, что отключен:

$firewall-cmd --state
not running

Есть ли другие параметры брандмауэра, которые мне не хватает?


Какая версия CentOS? Что произойдет, если вы запустите службу iptables status?
— Энтони Форнито

Я добавил остальные правила iptables. Моя версия - CentOS Linux версии 7.2.1511 (Core). При вызове службы iptables статус показывает iptables как активный.
— Джаред Рокс

Вы пытались отключить брандмауэр? Сделайте это, чтобы вы могли сузить проблему.
— Викелидис Костас

Итак, порт брандмауэра открыт, а служба прослушивает. Но что происходит, когда вы пытаетесь подключиться к нему?
— Майкл Хэмптон

Ответы:


10

Я думаю, что здесь происходит, вы смешиваете свои технологии.

Пытаться:

остановка сервиса iptables

Увидимся, вы получите тот же ответ

Если вы это сделаете, то вам нужно удалить либо iptables, либо firewalld

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.