Das Öffnen eines Ports mit Firewalld scheint nicht zu funktionieren

Das Öffnen eines Ports mit Firewalld scheint nicht zu funktionieren

Ich habe sshd so konfiguriert, dass es auf einem anderen Port läuft. Ich habe diesen Port mit Firewalld geöffnet:

$ sudo firewall-cmd --zone=public --add-port=22000/tcp --permanent    

Die Auflistung der Regeln zeigt, dass Port 22000 geöffnet ist:

$ sudo firewall-cmd --permanent --zone=public --list-all
public (default)
  interfaces:
  sources:
  services: dhcpv6-client ssh
  ports: 22000/tcp 
  masquerade: no
  forward-ports: 
  icmp-blocks:
  rich rules:

Allerdings kann ich mich von einem Remote-Host nicht auf Port 22000 anmelden. Wenn ich iptables verwende, funktioniert es:

$ sudo iptables -I INPUT -p tcp --dport 22000 -j ACCEPT

Ich kann mich jetzt einloggen. Aberwie kann ich den Port mit Firewalld öffnen?

Bearbeiten: Wie gewünscht:

 $ sudo firewall-cmd --get-default-zone
 public

Und:

 $ firewall-cmd --get-active-zones
 public
  interfaces: eth0 eth1

Antwort1

Sehen Sie sich dieFirewalld-Dokumente:

Mit der permanenten Option --permanent können Optionen dauerhaft gesetzt werden. Diese Änderungen werden nicht sofort wirksam, sondern erst nach einem Neustart/Neuladen des Dienstes oder einem Systemneustart. Ohne die Option --permanent ist eine Änderung nur Teil der Laufzeitkonfiguration.

Wenn Sie --permanentdie Option verwenden, sollten Sie die Konfiguration neu laden. firewall-cmd --reload
Dies liegt daran, dass --permanentdie Option Änderungen in die gespeicherte Konfiguration schreibt und nicht in die laufende Konfiguration.

verwandte Informationen