Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >Software-Firewall iptables unter Linux – Definition und Löschung von Regeln

Software-Firewall iptables unter Linux – Definition und Löschung von Regeln

齐天大圣
齐天大圣Original
2020-11-18 15:22:532054Durchsuche

Die Einführung in die ipitables-Firewall sowie die Anzeige von Regeln und Bereinigungsregeln usw. wurden in einem früheren Artikel beschrieben. Heute finden Sie hier eine Demonstration, wie Sie Firewall-Regeln formulieren. Da wir bei der Arbeit hauptsächlich Regeln für die Filterkette formulieren, verwenden wir hier hauptsächlich die Fitler-Kette zur Demonstration.

Vorbereitung

Bevor wir Regeln formulieren, schließen wir zunächst den Firewalld-Dienst, aktivieren den iptables-Dienst und löschen dann die vorhandenen Regeln.

# systemctl stop firewalld
# systemctl start iptables
# iptables -F
# iptables -X
# iptables -Z

Neue Regelkette

Es gibt viele Optionen zum Hinzufügen einer Regelkette zu iptables. Schauen wir uns unten die grundlegende Verwendung an:

iptables [-t tables] -A|I 链名 [-i|o 网络接口] [-m state] [--state 数据包状态] \
> [-p 网络协议]  [-s 源地址 --sport 端口范围] [-d 目标地址 --dport 端口范围] \
> -j [ACCEPT|DROP|REJECT]

Optionen und Parameter:

  • -A|I Kettenname A bedeutet, dass Regeln nach vorhandenen Regeln hinzugefügt werden, während I Regeln an der Vorderseite einfügt. o stellt das ausgehende Datenpaket dar. Die Schnittstelle muss in Verbindung mit der OUTPUT-Kette verwendet werden.

  • -p-Netzwerkprotokolle. Zu den gebräuchlichen Protokollen gehören TCP, UPD, ICMP und All.

  • -m-Status Der Status des Datenpakets

  • --state Der Datenpaketstatus ist allgemein. Die Status umfassen UNGÜLTIG (ungültiges Datenpaket), ESTABLISHED (Status erfolgreich verbunden), NEU (neu hergestelltes Datenpaket), RELATED (neue Verbindung in Verbindung mit bestehender Verbindung)

  • -s Quelladresse Adresse kann Es handelt sich um eine IP-Adresse wie 192.168.1.110 oder eine Netzwerkadresse 192.168.1.0/24

  • -d Zieladresse

  • -j gefolgt von Operationen, häufig sind ACCEPT (akzeptieren). ), DROP (drop), REJECT (reject) )

  • Regelformulierung für IP-, Netzwerk- und Netzwerkkartenschnittstellen

Nachfolgend finden Sie mehrere Beispiele für Regelketten. Wir erlauben Daten, die von 192.168.1.110 gesendet werden, und lehnen Daten ab, die von 192.168.1.111 gesendet werden.

# iptables -A INPUT -s 192.168.1.110 -j ACCEPT
# iptables -I INPUT -s 192.168.1.111 -j DROP

# iptables -vnL
Chain INPUT (policy ACCEPT 33 packets, 3048 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  *      *       192.168.1.111        0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       192.168.1.110        0.0.0.0/0           
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 18 packets, 1844 bytes)
 pkts bytes target     prot opt in     out     source               destination
Zugriff auf die Netzwerkadresse 192.168.1.0/24 zulassen

# iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
# iptables -vnL
Chain INPUT (policy ACCEPT 29 packets, 2328 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 DROP       all  --  *      *       192.168.1.111        0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       192.168.1.110        0.0.0.0/0           
    0     0 ACCEPT     all  --  *      *       192.168.1.0/24       0.0.0.0/0           
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
Chain OUTPUT (policy ACCEPT 15 packets, 1460 bytes)
 pkts bytes target     prot opt in     out     source               destination

Denken Sie über eine Frage nach, ob das Datenpaket von 192.168.1.111 akzeptiert oder abgelehnt wird. Nach der ersten Regel von INPUT zu urteilen, wird es abgelehnt, aber nach der letzten Regel zu urteilen, wird es akzeptiert. Die Antwort lautet: Wenn eine der Regeln erfüllt ist, werden die folgenden Regeln nicht befolgt, daher ist auch die Reihenfolge der Regelkette sehr wichtig.

Betrachten Sie den Fall weiter: Solange es sich um die lokale Loopback-Adresse lo handelt, ist es zulässig

# iptables -A INPUT -i lo -j ACCEPT

Regelformulierung für den Port

Blockieren Sie alle lokalen 21-Port-Datenpakete, die in den lokalen Port gelangen

# iptables -A INPUT -i eth0 -p tcp --dport 21 -j DROP
Blockieren Sie die Ports zwischen 1024 und 65534. Alle sind offen. Sie können Portnummer: Portnummer verwenden, um eine fortlaufende Portnummer darzustellen .1.0/24.

Der lokale SSH-Dienst akzeptiert keine Datenpakete vom 1024:65535-Port des Netzwerks 192.168.1.0/24

# iptables -A INPUT -i eth0 -p tcp --dport 1024:65534 -j ACCEPT

Regeln für den Verbindungsstatus von Datenpaketen

Der allgemeine Status von Datenpaketen ist UNGÜLTIG ( Ungültiges Datenpaket), ESTABLISHED (Status erfolgreich verbunden), NEW (neu hergestelltes Datenpaket), RELATED (neue Verbindung in Verbindung mit bestehender Verbindung).

Alle Datenpakete im Status ESTABLISHED und RELATED werden akzeptiert und alle Datenpakete im Status INVALID werden verworfen. außer dass -A durch -D ersetzt wird. Lassen Sie uns gemeinsam ein paar Regeln löschen.

# iptables -A INPUT -i eth0 -s 192.168.1.0/24 -p tcp --dport 3306 -j DROP
# iptables -A INPUT -i etc0 -p tcp -s 192.168.1.0/24 \
> --sport 1024:65535 --dport 22 -j DROP
Hinweis: Die oben genannten Einstellungen für iptables werden nur im Speicher gespeichert. Nach dem Neustart des Systems verschwinden diese Einstellungen. Solange Sie sich also nicht vor Situationen von außen blockieren, können Sie gerne üben.

Wenn Sie die Regeln speichern möchten, geben Sie bitte /usr/libexec/iptables/iptables.init save ein, um zu speichern.

Verwandte Empfehlungen: „

Linux-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSoftware-Firewall iptables unter Linux – Definition und Löschung von Regeln. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn