Dieser Artikel enthält grundlegende Informationen zur Verwendung Ihrer firewalld
Software-Firewall. Diese Firewall ist die Standard-Firewall-Lösung für RHEL® 7- und CentOS® 7-basierte Linux®-Distributionen.
Hinweis :Wenn Sie Änderungen an Ihrer Firewall auf einem RackConnect®-Server vornehmen müssen, müssen Sie dies über Ihren Dedicated Firewall Manager tun.
Voraussetzungen
Sie müssen die folgenden Voraussetzungen erfüllen:
- Grundlegendes Verständnis von Secure Shell (SSH®)
- Sudo- oder Administratorzugriff auf Ihren Server
- Ein Nicht-RackConnect-Cloud-Server mit RHEL 7 oder CentOS 7
Was ist firewalld?
Die firewalld
service ist die standardmäßige und am häufigsten verwendete Software-Firewall-Lösung, die in RHEL und CentOS 7 verwendet wird. Es ist ein Wrapper für iptables
die eine andere Syntax verwendet, um neue Regeln anzuwenden.
Wie funktioniert firewalld?
Die firewalld
Der Dienst verwendet Zonen, um den Firewall-Zugriff zu steuern. Zonen sind vorgefertigte Regelsätze für verschiedene Vertrauensstufen. Sie haben wahrscheinlich eine Zone für einen bestimmten Standort oder ein bestimmtes Szenario, z. B. home
, public
, oder trusted
. Unterschiedliche Zonen ermöglichen unterschiedliche Netzwerkdienste und Arten von eingehendem Datenverkehr, während alles andere verweigert wird. Nachdem Sie firewalld
aktiviert haben zum ersten Mal public
ist die Standardzone.
Hier sind einige Beispiele für Zonen:
Zone | Was es tut |
---|---|
public | Dies ist die externe Zone oder mit dem Internet verbundene Zone. Sie vertrauen Verbindungen von außen nicht und lassen nur bestimmte Dienste zu. |
internal | Das ist traditionell die Innenseite des Netzwerks hinter der Firewall. |
dmz | Diese Zone ist für die Verwendung auf Computern vorgesehen, die sich in einer DMZ (demilitarisierten Zone) befinden. Nur bestimmte eingehende Verbindungen können auf das eingeschränkte interne Netzwerk zugreifen. |
drop | Traffic, der für den drop bestimmt ist Zone wird ohne Antwort gelöscht. Verwenden Sie dies als schwarzes Loch für bösartige IPs. |
trusted | trusted akzeptiert alle Verbindungen. Verwenden Sie diese Zone sparsam. |
Aktivieren und Überprüfen des Status der Firewalld
Bevor Sie beginnen, müssen Sie sicherstellen, dass firewalld
läuft auf Ihrem Server. Sie können dies mit dem folgenden Befehl überprüfen:
firewall-cmd --state
Wenn der Dienst gestartet wird, sollten Sie eine Ausgabe erhalten, die anzeigt, dass der Dienst ausgeführt wird.
Wenn der Dienst nicht ausgeführt wird, können Sie ihn starten, indem Sie den folgenden Befehl ausführen:
systemctl start firewalld
Sie können auch firewalld
aktivieren um beim Booten zu starten, indem Sie den folgenden Befehl ausführen:
systemctl enable firewalld
Zonen in firewalld
Bevor Sie Regeln hinzufügen, müssen Sie Ihre Standardeinstellungen in firewalld
überprüfen .
So überprüfen Sie die Standardzone in firewalld
, können Sie den folgenden Befehl ausführen:
firewall-cmd --get-default-zone
Standardmäßig ist diese Zone auf public
eingestellt . Sie können andere Zonen sehen, indem Sie den folgenden Befehl verwenden:
firewall-cmd --get-zones
Dieser Befehl listet die verfügbaren Zonen in firewalld
auf .
Wie bereits erwähnt, sind die verschiedenen Zonen in firewalld
haben unterschiedliche Funktionen. Sie können die Zonen- und Ethernet-Controller-Verbindungen angeben, um mehr Kontrolle über den Zugriff auf Ihren Server zu erhalten, aber für Rackspace-Zwecke verwenden Sie die Standardkonfiguration und ändern den public
Zone.
Grundlegende firewalld
Regelanatomie
Wenn Sie eine firewalld
schreiben Regel benötigen Sie ein paar grundlegende Elemente in der Regel.
-
Geben Sie den Befehl an.
-
Geben Sie die Zone an und ändern Sie sie.
-
Persistenz festlegen.
Wenn Sie all das zusammenfassen, erhalten Sie so etwas wie das folgende Beispiel:
firewall-cmd --zone=public --add-source=127.0.0.1 --permanent
Dieser Befehl ermöglicht den Zugriff von der IP 127.0.0.1
für die public
Zone. Es gibt andere verfügbare Flags, aber dies ist die grundlegende Konstruktion einer firewalld
Regel.
Permanent-Flag-and-Rich-Regeln
Das permanente Flag kann die Regelpersistenz festlegen und die Feinabstimmung von Regeln mithilfe von Rich Rules ermöglichen .
Permanent-Flag
Die Verwendung des permanenten Flags aktiviert die Regel nicht in der laufenden Konfiguration. Um sicherzustellen, dass die Regel bestehen bleibt, müssen Sie die Regel ein zweites Mal mit dem permanenten Flag hinzufügen.
Beispiel für permanentes Flag:
firewall-cmd --add-source=12.345.67.89 --zone=trusted --permanent
Rich-Regeln
Umfangreiche Regeln bieten mehr Kontrolle durch benutzerdefinierte granulare Optionen. Umfangreiche Regeln können Protokollierung, Maskierung, Portweiterleitung und Ratenbegrenzung konfigurieren.
Beispiel für Rich-Regeln:
firewall-cmd --add-rich-rule='rule family=ipv4 source address="123.45.69.78" port port="11" protocol=tcp accept' --permanent
Hinweis :Eine Mischung aus Rich-Regeln und regulären Regeln kann zu einer unordentlichen Konfiguration führen. Wenn Sie für bestimmte Regeln, z. B. den SSH-Zugriff, nur Rich-Regeln verwenden, können Sie Ihre Einrichtung sauber halten.
Beispielbefehle
Zum Schluss noch ein paar Beispiele für firewalld
Befehle.
Befehl | Was es tut |
---|---|
firewall-cmd --add-source=12.345.67.89 --zone=trusted | Dieser Befehl akzeptiert Datenverkehr von der angegebenen IP zur vertrauenswürdigen Zone. |
firewall-cmd --zone=drop --add-source=12.345.67.89/24 | Dieser Befehl löscht Datenverkehr aus dem angegebenen IP-Bereich. |
firewall-cmd --zone=public --add-service=ssh | Dieser Befehl lässt Datenverkehr über SSH in der öffentlichen Zone zu. |
firewall-cmd --zone=public --list-all | Dieser Befehl listet alle für die Zone festgelegten Spezifikationen auf, wie z. B. Quellen, Dienste, Rich-Regeln usw. |
firewall-cmd --add-rich-rule='rule family=ipv4 source address="123.456.789.123" port port="22" protocol=tcp accept' --permanent | Dieser Befehl fügt eine reichhaltige Regel hinzu, um den Zugriff von der angegebenen IP auf Port 22 über TCP auf public zuzulassen Zone. |
Weiterführende Literatur
Dieses Dokument kratzt nur an der Oberfläche der Möglichkeiten mit firewalld
. Sie können den man
überprüfen Seite für firewalld
oder lesen Sie die offizielle Dokumentation für firewalld
unter https://firewalld.org/documentation/man-pages/firewall-cmd.html.