![Ich kann eine IP nicht blockieren](https://rvso.com/image/658740/Ich%20kann%20eine%20IP%20nicht%20blockieren%20.png)
Ich habe eine Umleitungsregel für meine CSF wie die folgende;
17.1.1.13|80|27.5.5.22|80|tcp
17.1.1.13
ist meine Firewall (csf) und 27.5.5.22
die Adresse meines Webservers. Jeder kann also über die Firewall auf meine Website zugreifen. Blockieren einer Umleitungsregel für CSF (iptables)
Und ich habe versucht, 50.30.0.0/16
den CIDR-Block zu blockieren, und er wurde zu meiner csf.deny
Datei hinzugefügt.
Wenn ich jetzt versuche, eine Website über 44.5.6.7
die IP-Adresse zu besuchen, kann ich das. Obwohl 50.30.0.1
sie gesperrt ist, kann ich über die IP-Adresse auf die Website zugreifen. Ich möchte sie 50.30.0.1
unter allen Umständen sperren.
Zugehörige Zeilen meiner iptables wie die unten. Was soll ich tun?
Chain DENYIN (1 references)
num pkts bytes target prot opt in out source destination
1 0 0 LOGDROPIN all -- !lo * 50.30.0.0/16 0.0.0.0/0
Chain DENYOUT (1 references)
num pkts bytes target prot opt in out source destination
1 0 0 LOGDROPOUT all -- * !lo 0.0.0.0/0 50.30.0.0/16
Chain PREROUTING (policy ACCEPT 7 packets, 336 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 REDIRECT tcp -- !lo * 50.30.0.0/16 0.0.0.0/0
2 0 0 REDIRECT tcp -- !lo * 50.30.0.0/16 0.0.0.0/0
3 0 0 DNAT tcp -- !lo * 0.0.0.0/0 17.1.1.13
4 0 0 DNAT tcp -- !lo * 0.0.0.0/0 17.1.1.13
Chain POSTROUTING (policy ACCEPT 6 packets, 699 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 SNAT tcp -- * !lo 0.0.0.0/0 27.5.5.22
2 0 0 SNAT tcp -- * !lo 0.0.0.0/0 27.5.5.22
Antwort1
Wenn Sie den iptables-Befehl -A (für APPEND
) verwenden, wird Ihre Regel am Ende der Tabelle hinzugefügt.
Die Regeln werden von der ersten bis zur letzten ausgewertet, und jede übereinstimmende Regel, die zu einer Entscheidung ( ACCEPT
, REJECT
, DENY
) führt, stoppt die Auswertung aller nachfolgenden Regeln.
Was hier also passiert, ist, dass Ihre DROP
Regel nie eine Rolle spielt, da iptables
sie bei der Auswertung sowieso in die Richtlinie eingeflossen wäre DROP
.
Sie müssen Ihre Regel vor allen ACCEPT
Regeln hinzufügen, auf die die entsprechende IP-Adresse keinen Zugriff haben soll. In Ihrem Fall würde ich sagen, als erste Regel.
Das wäre so etwas wie
iptables -I INPUT -s 5.254.0.0/16 -j DROP
Dadurch wird die Regel am Anfang der Tabelle hinzugefügt, sodass sie vor allem anderen berücksichtigt wird und Ihre übrigen Regeln für alle übereinstimmenden IPs ignoriert werden. Diese Pakete werden gelöscht.
Beachten Sie: Wenn Sie genauer angeben müssen, wo die Regel eingefügt werden soll, können Sie direkt nach dem eine Positionsnummer angeben -I
.