Wie blockiere ich ausgehenden Datenverkehr mit Ausnahme einiger IPs über IPTables?

Wie blockiere ich ausgehenden Datenverkehr mit Ausnahme einiger IPs über IPTables?

Ich habe einen Asus-WLAN-Router, der mit MERLIN geflasht wurde. Ich besitze auch mehrere IP-Kameras, die über WLAN verbunden sind. Ich möchte verhindern, dass die IP-Kameras versuchen, nach Hause zu telefonieren, indem ich ausgehende Verbindungen deaktiviere. Was ich mit diesem getan habe

Es gibt jedoch ein paar Dinge, die ich gerne tun würde.

  1. STANDARDMÄSSIGVerhindern Sie, dass IP-Kameras Daten außerhalb meines Netzwerks senden.
  2. Ausnahme: IP-Kameras müssen eine Verbindung herstellen und an Port 465 (SMTPS-Port) senden, um eine E-Mail zu senden.
  3. Ausnahme: Ich möchte, dass eine Handvoll IP-Adressen (einige davon sind IP-Bereiche) über PORT remote auf die Kamera zugreifen können. Ich brauche also eine Regel, die eine Ausnahme von der Standardeinstellung darstellt.

Ich habe die Portweiterleitung bereits eingerichtet.

So kann ich mich beispielsweise über 192.168.1.2:123 (123 ist der Port, den ich verwende, um über den Browser auf die Kamera zuzugreifen) online über den Browser mit ihr verbinden. Ich möchte auch, dass sie nicht NUR lokal, sondern auch außerhalb des Heimnetzwerks, aber mit einer Handvoll IPs zugänglich ist. Wenn Sie nicht die IP-Adresse sind, werden Sie ABGELEHNT, wenn Sie es sind, werden Sie akzeptiert. Wie ein Rausschmeißer. Im Wesentlichen kann mein Arbeitscomputer also über Port 123 auf diese Kamera zugreifen, das ist es, was ich versuche.

Ich verstehe Linux und kenne einige der Flags für IPTABLES, aber nicht genug, also brauche ich einen Experten.

Danke!

Antwort1

Die Arbeit wird einfacher, wenn sich Ihre Kameras in einem Standard-Subnetz befinden. Dann können Sie in jeder unten genannten Regel das Subnetz angeben. Andernfalls sehen Sie besser nachdieser Beitrago.ä.

Nachdem Sie sich damit befasst haben, wie Sie den IP-Bereich von Kameras angeben, können Sie alle von Ihren Kameras initiierten Pakete (vorausgesetzt, es handelt sich um TCP-Verbindungen) mit der Option --syn problemlos löschen. Dies ist ein Beispiel, bei dem angenommen wird, dass sich alle Kameras (<=8 Kameras und keine anderen Systeme) in einem Subnetz von 192.168.1.0/29 befinden.

#1    iptables -A FORWARD -s 192.168.1.0/29 -p tcp --dport 465 -j ACCEPT
#2    iptables -A FORWARD -d 192.168.1.0/29 -p tcp --sport 465 -j ACCEPT
#3    iptables -A FORWARD -s 192.168.1.0/29 -p tcp --syn -j DROP
#4    iptables -A FORWARD -s 192.168.1.0/29 -p udp -j DROP

Fügen Sie #2 nur hinzu, wenn NAT auf der Linux-Box nicht durchgeführt wird.

So veröffentlichen Sie Kameras:

iptables -t nat -A PREROUTING -p tcp --dport 1202 -j DNAT 192.168.1.2:123
iptables -t nat -A PREROUTING -p tcp --dport 1203 -j DNAT 192.168.1.3:123
iptables -t nat -A PREROUTING -p tcp --dport 1204 -j DNAT 192.168.1.4:123

aber lassen Sie nur diese spezifischen IP-Adressen darauf zugreifen:

iptables -A FORWARD -s trustedip1 -d 192.168.1.0/29 -p tcp --dport 123 -j ACCEPT
iptables -A FORWARD -s trustedip2 -d 192.168.1.0/29 -p tcp --dport 123 -j ACCEPT
iptables -A FORWARD -s trustedip3 -d 192.168.1.0/29 -p tcp --dport 123 -j ACCEPT
iptables -A FORWARD -d 192.168.1.0/29 -p tcp --dport 123 -j DROP

Wenn sich die Kameraadressen nicht sauber in einem Subnetz befinden, müssen Sie natürlich 192.168.1.0/29 p mit der IP-Adresse der Kamera austauschen und die Regel für jede wiederholen.

verwandte Informationen