Ich verwende Tomate Shibby auf einem Router und versuche, mithilfe von iptables bestimmte Regeln festzulegen, um Folgendes festzulegen:
Ich habe einen Server, der auf 192.168.1.2 (LAN) Port 2232 läuft. Jeder aus dem LAN kann darauf zugreifen. Ich möchte sicherstellen, dass auf den Server Port 2232 zugegriffen werden kann NUR von 192.168.1.3
Ich habe die folgenden Iptables-Regeln festgelegt. Wie gesagt, ich verwende Tomate Shibby und habe diese Regeln in Administration- & gt; Scripts- & gt; Firewall festgelegt:
iptables -A INPUT -p tcp --dport 2232 -s 192.168.1.3 -d 192.168.1.2 -j ACCEPT
iptables -A INPUT -p tcp --dport 2232 -d 192.168.1.2 -j DROP
Die erste Regel sollte die Client-IP-Adresse 192.168.1.3 akzeptieren, um auf den Server zuzugreifen, der auf dem 192.168.1.2-Port 2232 ausgeführt wird, und die zweite Regel sollte die Pakete verwerfen, die von anderen IP-Adressen gesendet werden.
Ich habe den Router neu gestartet, nachdem ich die Änderungen vorgenommen habe, und ich kann weiterhin von anderen IP-Adressen aus auf meinen Server zugreifen. Ich habe via ssh überprüft, ob die Iptables tatsächlich von der Web-GUI gesetzt wurden, und das taten sie auch.
AKTUALISIEREN: Regeln, angezeigt von iptables -L
UPDATE2: Das Zugriffsbeschränkung funktioniert gut beim Erstellen von Regeln, aber es sieht so aus, als würden sie nur auf das angewendet, was über WAN geht. Es funktioniert nicht mit Einschränkungen im LAN.
ACCEPT tcp -- 192.168.1.3 192.168.1.2 tcp dpt:2232
DROP tcp -- anywhere 192.168.1.2 tcp dpt:2232
Ich bin mir nicht sicher, ob ich das irgendwie tun muss drin die Regeln auch, aber ich glaube nicht.
Anregungen sind willkommen.