Sammlung grundlegender Linux -Firewall Iptables Regeln

Sammlung grundlegender Linux -Firewall Iptables Regeln

Der Zweck dieser Anleitung ist es, einige der häufigsten Iptables -Befehle für Linux -Systeme anzuzeigen. Iptables ist die in alle Linux -Verteilungen eingebaute Firewall. Sogar Distribos wie Ubuntu, die UFW (unkomplizierte Firewall) und Red Hat verwendet, die Firewall verwendet.

Mastering iptables oder zumindest mit einigen der grundlegendsten Befehle vertraut, ist für Linux -Administratoren unerlässlich. Sogar Casual Linux -Benutzer können davon profitieren, die Grundlagen der Iptables -Firewall zu verstehen, da sie möglicherweise einige kleinere Konfigurationen irgendwann darauf anwenden müssen. Verwenden Sie einige der folgenden Beispiele, um sich mit der Iptables -Syntax vertraut zu machen und eine Idee zu erhalten, wie es zum Schutz Ihres Systems funktioniert.

WARNUNG
Sie sollten Iptables -Regeln nicht auf ein Produktionssystem anwenden, wenn Sie mit der Funktionsweise der Funktionsweise etwas vertraut sind. Seien Sie auch vorsichtig, wenn Sie Regeln auf Remote -Systeme anwenden (einen Computer, mit dem Sie eine SSH -Sitzung eingerichtet haben), da Sie sich versehentlich ausschließen können, wenn Sie die falsche Regel eingeben.

In diesem Tutorial lernen Sie:

  • Sammlung grundlegender Linux -Firewall Iptables Regeln
Anzeigen der auf unserem Linux -System konfigurierten Iptables -Regeln Softwareanforderungen und Linux -Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder Softwareversion verwendet
System Jede Linux -Distribution
Software iptables
Andere Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl.
Konventionen # - erfordert, dass gegebene Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mit Verwendung von ausgeführt werden können sudo Befehl
$ - Erfordert, dass die angegebenen Linux-Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden können

Befehlsbeispiele iptables



WUSSTEN SIE?
Beachten Sie, dass die Reihenfolge Ihrer Iptables -Regeln von Bedeutung ist. Wenn Ihr System ein Paket mit Netzwerkverkehr erhält, entsprechen Iptables es mit der ersten Regel, die es kann. Wenn Sie eine Regel haben, um den SSH -Verkehr zu akzeptieren, gefolgt von einer Regel zur Ablehnung des SSH -Verkehrs, werden Iptables immer den Verkehr akzeptieren. Sie können die Regelreihenfolge jederzeit ändern, indem Sie eine Regelnummer in Ihrem Befehl angeben.
  1. Regel: Iptables, um alle ausgehenden Netzwerkverbindungen abzulehnen

    Die zweite Zeile der Regeln ermöglicht nur aktuelle ausgehende und etablierte Verbindungen. Dies ist sehr nützlich, wenn Sie über SSH oder Telnet am Server angemeldet sind.

    # iptables -f output # iptables -a output -m Status -State etabliert -j Akzeptieren # iptables -a output -j Ablehnung 
  2. Regel: Iptables, um alle eingehenden Netzwerkverbindungen abzulehnen

    # iptables -f Eingabe # iptables -a Eingabe -m Status -State etabliert -j Akzeptieren # iptables -a Eingabe -j Ablehnung 
  3. Regel: Iptables, um alle Netzwerkverbindungen abzulehnen

    Diese Regel fällt und blockiert die gesamte Netzwerkverbindung, unabhängig davon. Noch wichtiger ist, dass dies auch aktuelle laufende etablierte Verbindungen umfasst.

    # iptables -f # iptables -a input -j ablehnen # iptables -a output -j reject # iptables -a Forward -J Ablehnung 
  4. Regel: Iptables, um eingehende Ping -Anfragen zu löschen

    Diese Iptables -Regel wird alle eingehenden Ping -Anfragen fallen lassen. Beachten Sie, dass es möglich ist, eine Ablehnung anstelle von Tropfen zu verwenden. Der Unterschied zwischen Drop -vs -Ablehnung besteht darin, dass Tropfen das eingehende Paket schweigend abfällt, während ein Ablehnung zu einem ICMP -Fehler führt, der zurückgegeben wird.



    # iptables -a input -p ICMP -ICMP -Typ Echo -Request -J Drop 
  5. Regel: Iptables, um ausgehende Telnet -Verbindungen fallen zu lassen

    Diese Iptables -Regel blockiert jeden ausgehenden Datenverkehr auf einen Host, bei dem der Zielport 23 ist (Telnet).

    # iptables -a output -p tcp - -dort telnet -j ablehnen 
  6. Regel: Iptables, um eingehende Telnet -Verbindungen abzulehnen

    Diese Iptables -Regel verweigert alle eingehenden Verbindungsanfragen an einen lokalen Port 23.

    # iptables -a input -p tcp - -dort telnet -j ablehnen 
  7. Regel: Iptables, um ausgehende SSH -Verbindungen abzulehnen

    Diese Iptables -Regel verweigert alle ausgehenden Verbindungen von einem lokalen Port 22 (SSH).

    # iptables -a output -p tcp - -dort SSH -j Ablehnung 
  8. Regel: Iptables, um eingehende SSH -Verbindungen abzulehnen

    Verweigern Sie alle eingehenden Verbindungen zu einem lokalen Port 22 (SSH).

    # iptables -a Eingabe -p tcp - -dort SSH -j Ablehnung 


  9. Regel: Iptables, um alle eingehenden Verkehr außer SSH- und lokalen Verbindungen abzulehnen

    Diese Regeln lehnen alle eingehenden Verbindungen zum Server ab, mit Ausnahme derjenigen auf Port 22 (SSH). Es akzeptiert auch Verbindungen auf der Loopback -Schnittstelle.

    # iptables -a input -i lo -j Akzeptieren # iptables -a input -p tcp - -dort SSH -j Akzeptieren # iptables -a Eingabe -j Rejection 
  10. Regel: iptables zur Akzeptanz eingehender SSH -Verbindungen von einer bestimmten IP -Adresse

    Mit dieser Iptables -Regel blockieren wir alle eingehenden Verbindungen an Port 22 (SSH) mit Ausnahme des Hosts mit IP -Adresse 77.66.55.44. Was dies bedeutet, ist, dass nur Host mit IP 77 gehostet wird.66.55.44 kann SSH in der Lage sein.

    # iptables -a Eingabe -p tcp -s 77.66.55.44 - -dort SSH -J Akzeptieren Sie # iptables -a Eingabe -p TCP - -dort SSH -J Ablehnung 
  11. Regel: iptables zur Akzeptanz eingehender SSH -Verbindungen von einer bestimmten MAC -Adresse

    Mit dieser Iptables -Regel blockieren wir alle eingehenden Verbindungen zu Port 22 (SSH), außer Host mit MAC -Adresse 00: E0: 4C: F1: 41: 6B. Mit anderen Worten, alle SSH -Verbindungen sind auf einen einzelnen Host mit einer MAC -Adresse 00: e0: 4c: f1: 41: 6b beschränkt.

    # iptables -a Eingabe -m Mac --Mac -Source 00: e0: 4c: f1: 41: 6b -p tcp - -dort SSH -j Akzeptieren # iptables -a Eingabe -p TCP - -dort SSH -j Ablehnung 
  12. Regel: Iptables, um eingehende Verbindungen an einem bestimmten TCP -Anschluss abzulehnen

    Die folgende Iptables -Regel senkt den gesamten eingehenden Verkehr auf TCP -Port 3333.

    # iptables -a Eingabe -p tcp - -dort 3333 -J Ablehnung 


  13. Regel: Iptables, um alle eingehenden Verbindungen auf einer bestimmten Netzwerkschnittstelle abzugeben

    Die folgende Regel wird eingehender Verkehr auf einer bestimmten Netzwerkschnittstelle aus Subnetz 192 fallen lassen.168.0.0/16. Das ist sehr nützlich, um alle gefälschten IP -Adressen fallen zu lassen. Wenn ETH0 eine externe Netzwerkschnittstelle ist, sollte kein eingehender Verkehr, der aus dem internen Netzwerk stammt.

    # iptables -a Eingabe -i eth0 -s 192.168.0.0/16 -J Drop 
  14. Regel: iptables zum Erstellen einer einfachen IP -Maskerade

    Die folgende Regel erstellt ein einfaches IP -Maskerading -Gateway, damit alle Hosts im selben Subnetz auf das Internet zugreifen können. Das folgende angegebene ETH0 ist eine externe Schnittstelle, die mit dem Internet verbunden ist.

    # echo "1">/proc/sys/net/ipv4/ip_forward # iptables -t nat -a poTrouting -o $ ext_iface -j masquerade 
  15. Regel: Lehnen Sie den gesamten eingehenden Telnetverkehr außer einer angegebenen IP

    Die folgende Iptables -Regel lehnt den gesamten eingehenden Telnet -Datenverkehr mit Ausnahme der Verbindungsanforderung von IP 222 ab.111.111.222

    # iptables -a Eingabe -T -Filter ! -S 222.111.111.222 -p tcp - -dort 23 -J Ablehnung 
  16. Regel: Lassen

    Die folgende Iptables -Regel lehnt den gesamten eingehenden SSH -Datenverkehr mit Ausnahme der Verbindungsanforderung aus dem IP -Adressbereich 10 ab.1.1.90 - 10.1.1.1.100.

    Negator entfernen "!Aus der folgenden Regel lehnen Sie den gesamten SSH -Datenverkehr aus, der aus dem IP -Adressbereich 10 stammt.1.1.90 - 10.1.1.100.



    # iptables -a Eingabe -t Filter -m Iprange ! --SRC-Reichweite 10.1.1.90-10.1.1.100 -p tcp - -dort 22 -J Ablehnung 
  17. Regel: Iptables, um den gesamten ausgehenden Verkehr an einen bestimmten Remote -Host abzulehnen

    Die folgende Iptables -Regel lehnt den gesamten ausgehenden Verkehr an einen Remote -Host mit einer IP -Adresse 222 ab.111.111.222

    # iptables -a output -d 222.111.111.222 -J Ablehnung 
  18. Regel: Iptables, um einen Zugriff auf eine bestimmte Website zu blockieren

    Die folgende Iptables -Regel blockiert den gesamten eingehenden Verkehr von Facebook.com wobei der Quellport Port 80 / www ist.

    # iptables -a input -S Facebook.com -p tcp --sport www -j Drop 

    Beachten Sie, dass die obige Iptables -Regel den Zugriff auf Facebook blockiert.Com sowie www.Facebook.com.

Gedanken schließen

In diesem Leitfaden haben wir eine Sammlung grundlegender Iptables -Regeln für Linux gesehen. Dies beinhaltete einige der häufigsten Regeln, die normalerweise auf Systeme angewendet werden, z. Die Verwendung dieser Regeln hilft Ihren Server von Angriffen und erhöht die Sicherheit insgesamt die Sicherheit. Fühlen Sie sich frei, diese Beispiele an Ihre eigenen Szenarien anzupassen.

Verwandte Linux -Tutorials:

  • Dinge zu installieren auf Ubuntu 20.04
  • Dinge zu tun nach der Installation Ubuntu 20.04 fokale Fossa Linux
  • Linux -Download
  • Beste Linux -Distribution für Entwickler
  • Installieren Sie Firewalld auf CentOS Linux -System
  • Eine Einführung in Linux -Automatisierung, Tools und Techniken
  • Ubuntu 20.04 Tricks und Dinge, die Sie vielleicht nicht wissen
  • Dinge zu tun nach der Installation Ubuntu 22.04 Jammy Quallen…
  • Linux -Befehle: Top 20 wichtigste Befehle, die Sie benötigen, um…
  • Linux -Konfigurationsdateien: Top 30 am wichtigsten