So prüfen Sie, ob eine Netzwerk-Firewall-Zone in Linux aktiv ist

LinuxLinuxBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab erfahren Sie, wie Sie überprüfen können, ob eine Netzwerk-Firewall-Zone in Linux mit firewalld aktiv ist. Wir beginnen damit, den Befehl firewall-cmd --get-active-zones zu verwenden, um die derzeit aktiven Zonen und die damit verbundenen Netzwerkschnittstellen zu identifizieren.

Danach werden wir die firewalld-Konfigurationsdateien im Verzeichnis /etc/firewalld untersuchen, um zu verstehen, wo die Zonenregeln definiert sind. Abschließend werden wir die zugrunde liegenden iptables-Regeln prüfen, um zu sehen, wie firewalld seine Zonenkonfigurationen in tatsächliche Paketfilterregeln umsetzt. Dieses Lab vermittelt ein grundlegendes Verständnis davon, wie firewalld die Netzwerksicherheit auf Ihrem Linux-System verwaltet.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/SystemInformationandMonitoringGroup -.-> linux/service("Service Managing") linux/RemoteAccessandNetworkingGroup -.-> linux/ifconfig("Network Configuring") linux/RemoteAccessandNetworkingGroup -.-> linux/netstat("Network Monitoring") linux/RemoteAccessandNetworkingGroup -.-> linux/ip("IP Managing") subgraph Lab Skills linux/ls -.-> lab-558734{{"So prüfen Sie, ob eine Netzwerk-Firewall-Zone in Linux aktiv ist"}} linux/cat -.-> lab-558734{{"So prüfen Sie, ob eine Netzwerk-Firewall-Zone in Linux aktiv ist"}} linux/service -.-> lab-558734{{"So prüfen Sie, ob eine Netzwerk-Firewall-Zone in Linux aktiv ist"}} linux/ifconfig -.-> lab-558734{{"So prüfen Sie, ob eine Netzwerk-Firewall-Zone in Linux aktiv ist"}} linux/netstat -.-> lab-558734{{"So prüfen Sie, ob eine Netzwerk-Firewall-Zone in Linux aktiv ist"}} linux/ip -.-> lab-558734{{"So prüfen Sie, ob eine Netzwerk-Firewall-Zone in Linux aktiv ist"}} end

Überprüfen von Zonen mit firewall-cmd --get-active-zones

In diesem Schritt beginnen wir mit der Erkundung von firewalld, dem dynamischen Firewall-Verwaltungstool in Linux. Firewalls sind für die Netzwerksicherheit von entscheidender Bedeutung, da sie steuern, welcher Datenverkehr in Ihr System hinein und aus ihm heraus zugelassen wird.

firewalld verwendet das Konzept von "Zonen" zur Verwaltung von Firewall-Regeln. Zonen definieren das Vertrauensniveau für Netzwerkverbindungen. Unterschiedliche Zonen haben unterschiedliche Standardregeln. Beispielsweise kann eine "public" (öffentliche) Zone strengere Regeln haben als eine "trusted" (vertrauenswürdige) Zone.

Lassen Sie uns überprüfen, welche Zonen derzeit auf Ihrem System aktiv sind. Wir verwenden den Befehl firewall-cmd mit der Option --get-active-zones.

Öffnen Sie Ihr Terminal, wenn es noch nicht geöffnet ist. Denken Sie daran, dass Sie das Symbol für das Xfce Terminal auf der linken Seite Ihres Desktops finden können.

Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:

firewall-cmd --get-active-zones

Sie sollten eine Ausgabe ähnlich der folgenden sehen:

public
  interfaces: eth0

Diese Ausgabe zeigt uns, dass die public-Zone derzeit aktiv ist und mit der Netzwerkschnittstelle eth0 verknüpft ist. Die Schnittstelle eth0 ist die Verbindung Ihrer virtuellen Maschine zum Netzwerk.

Das Verständnis der aktiven Zonen ist der erste Schritt bei der Verwaltung Ihrer Firewall mit firewalld. In den nächsten Schritten werden wir uns die Konfigurationsdateien und die Anwendung der Regeln ansehen.

Klicken Sie auf Weiter, um fortzufahren.

Überprüfen der firewalld-Konfiguration mit cat /etc/firewalld

Im vorherigen Schritt haben wir gesehen, welche firewalld-Zonen aktiv sind. Jetzt schauen wir uns an, wo firewalld seine Konfigurationsdateien speichert. Diese Dateien definieren die Regeln für jede Zone.

Das Hauptkonfigurationsverzeichnis für firewalld ist /etc/firewalld. Innerhalb dieses Verzeichnisses finden Sie Unterverzeichnisse für Zonen, Dienste und andere Konfigurationselemente.

Wir können den Befehl cat verwenden, um den Inhalt von Dateien anzuzeigen. Um zu sehen, was sich im Verzeichnis /etc/firewalld befindet, könnten wir versuchen, es mit cat anzuzeigen, aber cat ist für Dateien, nicht für Verzeichnisse, ausgelegt. Stattdessen listen wir den Inhalt des Verzeichnisses mit dem Befehl ls auf.

Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:

ls /etc/firewalld/

Sie sollten eine Liste von Verzeichnissen und Dateien sehen, ähnlich wie folgt:

icmptypes  lockdown-whitelist.xml  modules  panic-iface.conf  services  zones

Dies zeigt die Struktur der firewalld-Konfiguration. Das Verzeichnis zones ist besonders wichtig, da es die Konfigurationsdateien für jede Zone enthält (z. B. public.xml, trusted.xml usw.).

Schauen wir uns das Verzeichnis zones genauer an. Geben Sie ein:

ls /etc/firewalld/zones/

Sie werden eine Liste von XML-Dateien sehen, eine für jede vordefinierte Zone:

block.xml  dmz.xml  drop.xml  external.xml  home.xml  internal.xml  public.xml  trusted.xml  work.xml

Diese XML-Dateien enthalten die spezifischen Regeln für jede Zone. Beispielsweise definiert public.xml die Regeln für die public-Zone, die wir im vorherigen Schritt als aktiv gesehen haben.

Obwohl wir in diesem Lab nicht in die Details der XML-Dateien einsteigen werden, ist es ein wichtiger Bestandteil des Verständnisses von firewalld, zu wissen, wo die Konfiguration gespeichert ist.

Klicken Sie auf Weiter, um zum nächsten Schritt zu gelangen.

Prüfen der iptables-Regeln mit iptables -L

Während firewalld die moderne Methode zur Verwaltung von Firewalls auf vielen Linux-Distributionen ist, arbeitet es oft, indem es das zugrunde liegende netfilter-Framework konfiguriert, das traditionell mit dem iptables-Befehl verwaltet wird.

Selbst wenn Sie firewalld verwenden, können Sie die Regeln, die firewalld in netfilter erstellt hat, mit dem iptables-Befehl prüfen. Dies kann hilfreich sein, um zu verstehen, wie firewalld seine zonenbasierten Regeln in die niedrigere Ebene der iptables-Regeln übersetzt.

Um die aktuellen iptables-Regeln aufzulisten, verwenden wir den iptables-Befehl mit der Option -L. Da das Anzeigen von Firewall-Regeln administrative Rechte erfordert, müssen wir sudo verwenden.

Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:

sudo iptables -L

Sie werden eine Menge Ausgabe sehen! Diese Ausgabe zeigt die verschiedenen iptables-Chains (wie INPUT, FORWARD, OUTPUT) und die darin enthaltenen Regeln. firewalld erstellt seine eigenen Chains, oft mit dem Präfix FWD, IN_, OUT_ usw., um den Datenverkehr basierend auf Zonen und Diensten zu verwalten.

Hier ist ein Auszug aus dem, was Sie sehen könnten (die genaue Ausgabe variiert):

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
ACCEPT     all  --  anywhere             anywhere
INPUT_direct  all  --  anywhere             anywhere
INPUT_ZONES_SOURCE  all  --  anywhere             anywhere
INPUT_ZONES  all  --  anywhere             anywhere
...
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
...
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
...
Chain INPUT_ZONES (1 references)
target     prot opt source               destination
FWD_public  all  --  anywhere             anywhere             [goto] /* zone public */
...

Machen Sie sich keine Sorgen, wenn Sie gerade nicht jede Zeile dieser Ausgabe verstehen. Der wichtigste Punkt ist, dass firewalld diese iptables-Regeln im Hintergrund aktiv verwaltet. Der Befehl iptables -L gibt Ihnen einen Einblick in die tatsächlichen Paketfilterregeln, die vom Kernel 强制执行 werden.

Dieser Schritt beendet unsere kurze Einführung in firewalld und seine Beziehung zu iptables. Sie haben gelernt, wie Sie aktive Zonen prüfen, Konfigurationsdateien finden und die zugrunde liegenden iptables-Regeln prüfen können.

Klicken Sie auf Weiter, um das Lab abzuschließen.

Zusammenfassung

In diesem Lab haben wir begonnen, firewalld zu untersuchen, um aktive Netzwerk-Firewall-Zonen in Linux zu prüfen. Wir haben gelernt, dass firewalld Zonen verwendet, um Firewall-Regeln zu verwalten, und dass der Befehl firewall-cmd --get-active-zones verwendet wird, um festzustellen, welche Zonen derzeit aktiv sind und mit Netzwerkschnittstellen verknüpft sind. Wir haben ein Beispiel gesehen, in dem die public-Zone auf der Schnittstelle eth0 aktiv war.

Anschließend haben wir begonnen, die firewalld-Konfigurationsdateien zu untersuchen und festgestellt, dass das Hauptkonfigurationsverzeichnis /etc/firewalld ist. Wir haben versucht, den Inhalt des Verzeichnisses anzuzeigen und verstanden, dass cat für Dateien, nicht für Verzeichnisse, verwendet wird, und dass das Auflisten des Verzeichnisinhalts die geeignete Methode ist, um die Konfigurationsdateien für Zonen, Dienste und andere Elemente zu sehen.