Was ist der Unterschied zwischen „firewall-cmd --reload“ und „systemctl restart firewalld.service“?

Was ist der Unterschied zwischen „firewall-cmd --reload“ und „systemctl restart firewalld.service“?

Was ist der Unterschied zwischen firewall-cmd --reloadund systemctl restart firewalld?

Antwort1

  • systemctl restart firewalldwird den Prozess beenden und einen neuen starten.

  • firewall-cmd --reloadWille

Der Befehl „Neu laden“ löscht alle Laufzeitkonfigurationen und wendet eine permanente Konfiguration an.Quelle

Jede Konfiguration ohne das --permanentFlag ist eine Laufzeitkonfiguration und

Änderungen an der Laufzeitkonfiguration bleiben beim Neustart oder beim Neustarten von FirewallD nicht erhalten, wohingegen permanente Änderungen nicht auf ein laufendes System angewendet werden.

Wie von @mircea-vutcovici angemerkt, führt das Neuladen der Firewall-Regeln mit Firewall-cmd nicht dazu, dass das System eine potentielle neue ausführbare Firewalld-Datei verwendet, wenn diese seit dem letzten Neustart des Daemons aktualisiert wurde. Abhängig von Ihrer Distribution kann dies jedoch vom Paketmanager durchgeführt worden sein, als das Paket aktualisiert wurde. DieDokumentationZustände:

Zum Neuladen firewalldkönnen Sie entweder das Kommandozeilentool verwenden oder das Signal beispielsweise mit firewall-cmd --reloadsenden .SIGHUPfirewalldkillall -HUP firewalld

Der killall -HUP firewalldSchritt wird ausgeführt, wenn ausgeführt wird systemctl reload firewalld. Betrachtet man die grundlegendenDesignvon Firewalld ist es im Wesentlichen einFrontendzu iptablesoder ähnlichen Backends. Das Beenden des Firewalld-Prozesses sollte also keine Auswirkungen auf die eigentlichen Firewall-Regeln haben. Beide Methoden zum Neuladen der Firewalld-Regeln haben also den gleichen Effekt. Ich persönlich würde die systemd-Methode bevorzugen, um sicherzustellen, dass die aktuellste ausführbare Firewalld-Datei verwendet wird.

verwandte Informationen