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