1. Grundlagen der Linux-Firewall Das Linux-Firewall-System arbeitet hauptsächlich auf der Netzwerkebene und filtert und beschränkt TCP/IP-Datenpakete in Echtzeit. Es handelt sich um eine typische Paketfilter-Firewall (oder Netzwerkebenen-Firewall). Das Firewall-System des Linux-Systems basiert auf der Koexistenz des Kernels: Firewalld, Iptables und Ebtables. Standardmäßig wird Firewalld zum Verwalten des Netfilter-Subsystems verwendet.
1. Übersicht über Firewalld Die Rolle von Firewalld besteht darin, passende Regeln (oder Richtlinien) für den Paketfiltermechanismus bereitzustellen. Durch verschiedene Regeln teilt es Netfilter mit, wie mit Datenpaketen umgegangen werden soll, die von einer bestimmten Quelle kommen, an ein bestimmtes Ziel gehen oder bestimmte Protokolleigenschaften aufweisen. Um Firewalls bequemer zu organisieren und zu verwalten, bietet Firewalld dynamische Firewall-Verwaltungstools, die Netzwerkverbindungen und durch Netzwerkzonen definierte Schnittstellensicherheitsstufen unterstützen. Unterstützt IPv4- und IPv6-Firewalleinstellungen sowie Ethernet-Bridge und verfügt über zwei Konfigurationsmodi:
Es unterstützt auch Dienste oder Anwendungen, um Schnittstellen für Firewall-Regeln direkt hinzuzufügen. 2. Firewalld-Netzwerkbereich Firewalld unterteilt den gesamten Netzwerkdatenverkehr in mehrere Zonen und vereinfacht so die Firewall-Verwaltung. Firewall-Regeln, die den Datenverkehr anhand von Bedingungen wie der Quell-IP-Adresse des Datenpakets oder der eingehenden Netzwerkschnittstelle in den entsprechenden Bereich umleiten. Bei Paketen, die in das System gelangen, muss zunächst die Quelladresse überprüft werden:
Die Standardzone ist keine separate Zone, sondern verweist auf eine andere im System definierte Zone. Standardmäßig ist die Standardzone öffentlich, dies kann jedoch geändert werden. Die oben genannten Übereinstimmungsregeln gelten in der richtigen Reihenfolge, und die erste übereinstimmende Regel gewinnt. In jedem Bereich können Sie eine Reihe von Diensten oder Ports konfigurieren, die geöffnet oder geschlossen werden sollen. Jeder vordefinierte Bereich von Firewalld ist mit Diensten eingestellt, die standardmäßig geöffnet sind. 3. Beschreibung der vordefinierten Bereiche von Firewalld
2. Konfigurationsmethode der Firewalld-Firewall Im Centos 7-System kann Firewalld auf drei Arten konfiguriert werden:
Im Allgemeinen wird nicht empfohlen, die Konfigurationsdatei direkt zu bearbeiten. 1. Grundlegende Befehle von Firewalld-cmd [root@centos01 ~]# systemctl start firewalld <!--Starte Firewall--> [root@centos01 ~]# systemctl enable firewalld<!--Stellt Firewalld so ein, dass es beim Booten automatisch gestartet wird--> [root@centos01 ~]# systemctl status firewalld <!--Überprüfen Sie den Betriebsstatus der Firewall--> [root@localhost ~]# firewall-cmd --state <!-- Den Berechtigungsstatus der Firewall anzeigen --> läuft [root@centos01 ~]# systemctl stop firewalld<!--Stop firewalld--> [root@centos01 ~]# systemctl disable firewalld<!--Stellt Firewall so ein, dass sie beim Booten nicht automatisch gestartet wird--> [root@centos01 ~]# firewall-cmd --get-zones <!--Die vordefinierten Bereiche der Firewall anzeigen--> [root@centos01 ~]# firewall-cmd --get-service <!--Von der Firewall unterstützte vordefinierte Diensttypen anzeigen--> [root@centos01 ~]# firewall-cmd --get-default-zone <!--Standardzone des Systems anzeigen--> [root@localhost /]# firewall-cmd --reload <!--Firewall neu laden--> [root@centos01 ~]# firewall-cmd --get-active-zones <!--Aktivierte Bereiche anzeigen--> [root@centos01 ~]# firewall-cmd --get-icmptypes <!--Vordefinierte ICMP-Typen anzeigen--> Adresse nicht erreichbar, ungültiger Header, Kommunikation verboten, Ziel nicht erreichbar Echo-Antwort Echo-Anforderung Fragmentierung erforderlich Host-Prioritätsverletzung Host verboten Host-Umleitung, Host unbekannt, Host nicht erreichbar, IP-Header schlecht, Nachbar-Werbung Nachbarwerbung, Netzwerk verboten, Netzwerkumleitung, Netzwerk unbekannt Netzwerk nicht erreichbar, keine Route, Paket zu groß, Parameterproblem, Port nicht erreichbar Vorrang-Abschaltung, Protokoll nicht erreichbar, Weiterleitung, erforderliche Option fehlt Router-Werbung, Router-Anfrage, Source-Quench, Source-Route-Fehler, Zeit überschritten Zeitstempel-Antwort Zeitstempel-Anfrage Tos-Host-Umleitung Tos-Host-nicht erreichbar Tos-Netzwerk-Umleitung Tos-Netzwerk-nicht erreichbar TTL-Null während der Reassemblierung TTL-Null während der Übertragung, unbekannter Header-Typ, unbekannte Option Die Bedeutung einiger Blockierungstypen in den Ausführungsergebnissen des Befehls „firewall-cmd --get-icmptypes“ ist wie folgt:
2. Firewalld-Zonenverwaltungsoptionen
Nachfolgend sehen Sie ein Beispiel für die Gebietsverwaltung: [root@centos01 ~]# firewall-cmd --get-default-zone <!--Zeige die Standardzone im aktuellen System--> [root@centos01 ~]# firewall-cmd --list-all<!--Alle Regeln des Standardbereichs anzeigen--> [root@centos01 ~]# firewall-cmd --get-zone-of-interface=ens32 <!-- Zone anzeigen, in der sich die ens32-Schnittstelle befindet --> intern [root@centos01 ~]# firewall-cmd --zone=internal --change-interface=ens32 <!--Ändern Sie den Bereich, der der ens32-Schnittstelle entspricht, in den internen Bereich--> Die Schnittstelle wird von NetworkManager gesteuert, die Zone wird auf „intern“ eingestellt. Erfolg [root@centos01 ~]# firewall-cmd --zone=internal --list-interface <!--Schnittstellenliste im internen Bereich anzeigen--> ens32 [root@centos01 ~]# firewall-cmd --get-active-zones <!--Alle aktivierten Zonen anzeigen--> intern Schnittstellen: ens32 3. Firewalld-Dienstverwaltung Zur einfacheren Verwaltung definiert Firewalld viele Dienste vor, die im Verzeichnis /usr/lib/firewalld/services/ gespeichert sind. Dienste werden über eine einzige XML-Konfigurationsdatei angegeben. Diese Konfigurationsdateien werden im folgenden Format benannt: service-name.xml. Jede Datei entspricht einem bestimmten Netzwerkdienst, beispielsweise dem SSH-Dienst. Wir müssen die Dienstkonfigurationsdatei im Verzeichnis /etc/firewalld/services/ platzieren. Die Servicekonfiguration bietet folgende Vorteile: Die Verwaltung von Regeln nach Dienstnamen ist benutzerfreundlicher; Der Modus zum Organisieren von Portgruppen nach Dienst ist effizienter. Wenn ein Dienst mehrere Netzwerkports verwendet, entspricht die Dienstkonfigurationsdatei einer Verknüpfung für Stapeloperationen zur Regelverwaltung dieser Ports. 1) Beschreibung allgemeiner Optionen zur Dienstverwaltung im Befehlsbereich von firewalld-cmd:
2) Nachfolgend sehen Sie ein Beispiel für die Dienstverwaltung von Firewalld (Einstellen der Dienste, auf die für die Standardzone zugegriffen werden darf): [root@centos01 ~]# firewall-cmd --list-services <!--Alle Dienste anzeigen, auf die im Standardbereich zugegriffen werden darf--> dhcpv6-Client ssh [root@centos01 ~]# firewall-cmd --add-service=http <!--Legen Sie den Standardbereich fest, um den Zugriff auf den HTTP-Dienst zuzulassen--> Erfolg [root@centos01 ~]# firewall-cmd --add-service=https <!--Legen Sie den Standardbereich fest, um den Zugriff auf den https-Dienst zuzulassen--> Erfolg [root@centos01 ~]# firewall-cmd --list-services <!--Alle Dienste anzeigen, auf die im Standardbereich zugegriffen werden darf--> dhcpv6-client ssh https http 3) Nachfolgend sehen Sie ein Beispiel für die Dienstverwaltung von Firewalld (Einstellen von Diensten, auf die für die interne Zone zugegriffen werden darf): [root@centos01 ~]# Firewall-cmd --zone=internal --add-service=mysql <!--Legen Sie den internen Bereich fest, um den Zugriff auf den MySQL-Dienst zu ermöglichen--> Erfolg [root@centos01 ~]# Firewall-cmd --zone=internal --remove-service=samba-client <!--Stellen Sie den internen Bereich so ein, dass der Zugriff auf den Samba-Client-Dienst nicht erlaubt ist--> Erfolg [root@centos01 ~]# Firewall-cmd --zone=internal --list-services <!--Alle Dienste anzeigen, auf die im internen Bereich zugegriffen werden darf--> SSH, MDNS, DHCPv6-Client, MySQL 4. Hafenmanagement Bei der Konfiguration der Dienste können vordefinierte Netzwerkdienste über den Dienstnamen konfiguriert werden und die an den Diensten beteiligten Ports werden automatisch geöffnet. Für nicht vordefinierte Dienste können Sie jedoch nur Ports für die angegebene Zone manuell hinzufügen. Sie können beispielsweise Port 443/TCP in der internen Zone öffnen, indem Sie die folgenden Vorgänge ausführen: Hier ist ein Beispiel: [root@centos01 ~]# Firewall-cmd --zone=internal --add-port=443/tcp <!--Öffnen Sie Port 443/tcp im internen Bereich--> Erfolg Wenn Sie den Zugriff auf Port 443/TCP in der internen Zone verbieten möchten, führen Sie den folgenden Befehl aus: [root@centos01 ~]# Firewall-cmd --zone=internal --remove-port=443/tcp <!--Zugriff auf Port 443/tcp im internen Bereich verbieten--> Erfolg Die obigen Konfigurationen sind alle temporäre Konfigurationen. Wenn Sie die aktuelle Konfiguration als permanente Konfiguration speichern möchten, können Sie den folgenden Befehl verwenden: [root@centos01 ~]# Firewall-cmd --runtime-to-permanent Erfolg Um es direkt als permanente Regel zu konfigurieren, müssen Sie die Option --permanent wie folgt einschließen: [root@centos01 ~]# firewall-cmd --add-icmp-block=echo-request --permanent <!--Ping verbieten--> Erfolg [root@centos01 ~]# Firewall-cmd --zone=external --add-icmp-block=echo-request --permanent <!--Externen Bereich so konfigurieren, dass Ping verboten wird--> Erfolg 3. Zwei Konfigurationsmodi von Firewalld Wie bereits erwähnt, verfügt das Befehlstool Firewall-CMD über zwei Konfigurationsmodi: Der Laufzeitmodus bezieht sich auf die aktuell im Speicher ausgeführte Firewall-Konfiguration, die ungültig wird, wenn das System oder der Firewalld-Dienst neu gestartet oder gestoppt wird. Der permanente Modus bezieht sich auf die Regelkonfiguration beim Neustart oder Neuladen der Firewall, die dauerhaft in der Konfigurationsdatei gespeichert wird. Das Befehlstool Firewall-cmd bietet drei Optionen in Bezug auf den Konfigurationsmodus:
Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Grafisches Tutorial zur Installation und Konfiguration der MySQL 5.7.21-Dekomprimierungsversion
>>: Detaillierte Erläuterung der Laderegeln der require-Methode in node.js
Inhaltsverzeichnis Hauptthema 1. Installieren Sie...
Bei der Optimierung der Datenbankleistung wird im...
1 Einleitung Kong ist kein einfaches Produkt. Das...
Einführung Da die Anforderungen an die Computerte...
Inhaltsverzeichnis Tomcat mit Docker installieren...
Wenn die Bildlaufleiste nach unten gezogen wird, ...
Inhaltsverzeichnis 1. Implementieren Sie die Meth...
Vorwort Da ich während des Lernprozesses Zookeepe...
Vorwort Zuerst wollte ich es mit wget auf CentOS8...
Einführung Wenn Sie mit der Verwendung von JDBC z...
Überprüfen Sie, ob Ihr CUDA installiert ist Geben...
MySQL-Batch löschen großer Datenmengen Angenommen...
Text OK, als nächstes ist es Zeit, die Renderings...
In diesem Artikelbeispiel wird der spezifische Ja...
1. Vor- und Nachteile von Indizes Vorteile: schne...