🛡️ Серверное приложение Получает «connection refused» с удаленных серверов [из-за firewalld или iptables] – CentOS / RHEL 7 |

🛡️ Серверное приложение Получает «connection refused» с удаленных серверов [из-за firewalld или iptables] – CentOS / RHEL 7

Мануал

Проблема

Приложение получает «connection refused» с других серверов.

Приложение доступно с локального хоста, а также прослушивает ожидаемый порт.

Решение

Брандмауэр на локальном сервере отбрасывает попытки входящих подключений с других серверов.

Примечание. По умолчанию CentOS / RHEL 7 использует службу FIREWALLD для управления правилами IPTABLES. Старая подсистема IPTABLES по-прежнему доступна и может использоваться напрямую, если служба FIREWALLD отключена.
1. Определите, используется ли служба FIREWALLD.
# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: active (running) since Thu 2017-12-21 15:03:59 EST; 4s ago 
Docs: man:firewalld(1)
Main PID: 18880 (firewalld)
CGroup: /system.slice/firewalld.service
└─18880 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

Dec 21 15:03:58 testserver systemd[1]: Starting firewalld - dynamic firewall daemon...
Dec 21 15:03:59 testserver systemd[1]: Started firewalld - dynamic firewall daemon.
Dec 21 15:04:01 testserver firewalld[18880]: WARNING: ICMP type 'beyond-scope' is not supported by the kernel for ipv6.
Dec 21 15:04:01 testserver firewalld[18880]: WARNING: beyond-scope: INVALID_ICMPTYPE: No supported ICMP type., ignoring for run-time.
Dec 21 15:04:01 testserver firewalld[18880]: WARNING: ICMP type 'failed-policy' is not supported by the kernel for ipv6.
Dec 21 15:04:01 testserver firewalld[18880]: WARNING: failed-policy: INVALID_ICMPTYPE: No supported ICMP type., ignoring for run-time.
Dec 21 15:04:01 testserver firewalld[18880]: WARNING: ICMP type 'reject-route' is not supported by the kernel for ipv6.
Dec 21 15:04:01 testserver firewalld[18880]: WARNING: reject-route: INVALID_ICMPTYPE: No supported ICMP type., ignorin

2. Определите, используется ли служба IPTABLES.

# 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 Thu 2017-12-21 17:51:12 UTC; 26min ago 
Process: 440 ExecStart=/usr/libexec/iptables/iptables.init start (code=exited, status=0/SUCCESS)
Main PID: 440 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/iptables.service

Dec 21 17:51:12 testserver systemd[1]: Starting IPv4 firewall with iptables...
Dec 21 17:51:12 testserver iptables.init[440]: iptables: Applying firewall rules: [ OK ]
Dec 21 17:51:12 testserver systemd[1]: Started IPv4 firewall with iptables.

Внимание: проверка брандмауэра с использованием «iptables -L» не достаточна.

3. До CentOS / RHEL 7 проверки брандмауэра системы с помощью команды iptables было достаточно, чтобы узнать, используется ли брандмауэр.

Например, проверка с помощью:

# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
...
INPUT_direct all -- anywhere anywhere
INPUT_ZONES_SOURCE all -- anywhere anywhere
INPUT_ZONES all -- anywhere anywhere
DROP all -- anywhere anywhere ctstate INVALID
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited

было достаточно, чтобы определить, как управлять правилами брандмауэра.

В CentOS / RHEL 7 более новая служба FIREWALLD или более старая IPTABLES-SERVICE могут управлять правилами брандмауэра.

Так что обе службы должны быть проверены, чтобы быть до конца уверенным.

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий