GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Fehlerbehebung „Verbindung abgelehnt“ von Remote-Servern in CentOS/RHEL 7 (entweder Firewalld- oder iptables-Dienstproblem)

Das Problem

Einer Anwendung wird von anderen Servern die Meldung „Verbindung verweigert“ angezeigt. Auf die Anwendung kann von localhost aus zugegriffen werden, und sie hört auch auf den erwarteten Port.

Die Lösung

Dies kann daran liegen, dass die Firewall auf dem lokalen Server eingehende Verbindungsversuche von anderen Servern verwirft. Standardmäßig verwendet CentOS/RHEL 7 den FIREWALLD-Dienst, um die IPTABLES-Regeln zu verwalten. Das ältere IPTABLES-Subsystem ist weiterhin verfügbar und kann direkt verwendet werden, wenn der FIREWALLD-Dienst deaktiviert ist.

Stellen Sie fest, ob der FIREWALLD-Dienst verwendet wird

Verwenden Sie den folgenden Befehl, um zu sehen, ob das Ziel firewalld auf dem System aktiv ist:

# 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., ignoring for run-time.

Wie Sie der obigen Ausgabe entnehmen können, ist der Firewalld-Dienst aktiv und wird ausgeführt.

Stellen Sie fest, ob der IPTABLES-Dienst verwendet wird

Verwenden Sie den folgenden Befehl, um festzustellen, ob der iptables-Dienst auf dem System ausgeführt wird.

# 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.

Wie aus der obigen Ausgabe ersichtlich, befindet sich das iptables-Ziel im deaktivierten Zustand.

Achtung :Überprüfen der Firewall mit „iptables -L“ ist nicht ausreichend.

Vor CentOS/RHEL 7 war es ausreichend, die System-Firewall mit dem Befehl iptables zu überprüfen, um zu wissen, ob eine Firewall verwendet wurde. Beispielsweise reichte die Überprüfung mit dem folgenden Befehl aus, um festzustellen, wie die Firewall-Regeln gesteuert werden:

# 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

Bei CentOS/RHEL 7 könnte entweder der neuere FIREWALLD-Dienst oder der ältere IPTABLES-SERVICE die Firewall-Regeln kontrollieren.


Cent OS
  1. So starten Sie den Netzwerkdienst unter CentOS 8 oder RHEL 8 neu

  2. CentOS / RHEL 7:vsftpd-Dienst kann nicht gestartet werden

  3. So deaktivieren Sie firewalld und wechseln zu iptables in CentOS / RHEL 7

  4. CentOS / RHEL:Anleitung zur Fehlerbehebung bei iptables

  5. Problem beim Öffnen eines Firewalld-Ports in CentOS/RHEL 8

RHEL 8 / CentOS 8 aktivieren den SSH-Dienst

5 Tools zum Aktivieren des Remotedesktopzugriffs auf RHEL/CentOS 7

CentOS / RHEL 7:Einsteigerleitfaden für Firewalld

CentOS / RHEL 7 :Führen Sie niemals den iptables-Dienst und den FirewallD-Dienst gleichzeitig aus!

Fehlerbehebung bei kdump-Problemen in CentOS/RHEL

So migrieren Sie CentOS/RHEL 6-iptables-Regeln auf CentOS/RHEL 7-Firewalld