Auf einem Linux-Netzwerkcomputer möchte ich die Anzahl der Adressen in der "öffentlichen" Zone einschränken (Firewall-Konzept), die diese erreichen dürfen. Das Endergebnis wäre also, dass keine andere Maschine auf einen Port oder ein Protokoll zugreifen kann, außer auf die explizit zugelassenen
--add-rich-rule='rule family="ipv4" source not address="192.168.56.120" drop'
--add-rich-rule='rule family="ipv4" source not address="192.168.56.105" drop'
Das obige Problem ist, dass dies keine echte Liste ist, sondern alles blockiert, denn wenn die eine Adresse blockiert wird, indem sie nicht mit der anderen übereinstimmt, was einen versehentlichen "Drop All" -Effekt erzeugt, wie würde ich eine bestimmte Non "entsperren" zusammenhängender Satz? Akzeptiert source eine Liste von Adressen? Ich habe noch nichts in meinem Blick auf die Dokumente oder das Google-Ergebnis gesehen.
EDIT: Ich habe gerade folgendes erstellt:
# firewall-cmd --zone=encrypt --list-all
encrypt (active)
interfaces: eth1
sources: 192.168.56.120
services: ssh
ports: 6000/tcp
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
Aber ich kann immer noch Port 6000 erreichen, da .123
ich beabsichtigte, dass eine Quelle, die nicht aufgeführt ist, keinen Dienst oder Port erreichen sollte
eth1
aus der Zone entfernen .firewall-cmd --zone=encrypt --remove-interface=eth1
Wie pro
firewalld.richlanguage
:Geben Sie eine Netzmaske für die Adresse an, um zusammenhängende Blöcke zuzulassen.
Andernfalls können Sie versuchen, eine
ipset
Liste mit zulässigen IP-Adressen für eine nicht zusammenhängende Liste zu erstellen .Zum Beispiel in
/etc/firewalld/direct.xml
:Das aktuelle
ipset
muss separat erstellt werden.quelle
Sie können problemlos mit Rich Rule verwalten.
Erster Schritt
Zweiter Schritt - Rich Rule hinzufügen
Auf alle Ports kann von 192.168.2.2 zugegriffen werden, sobald Sie eine Rich-Regel hinzugefügt und alle Ports von anderen Quellen blockiert haben.
Wenn Sie einen Port oder Dienst mit dem folgenden Befehl hinzufügen, können alle Quellen darauf zugreifen.
Wenn Sie einen bestimmten Port für ein bestimmtes IP öffnen möchten, gehen Sie wie folgt vor
quelle