iptables : Kommunikation zwischen rechnern einschränken

Alles rund um sicherheitsrelevante Fragen und Probleme.
Antworten
Benutzeravatar
speefak
Beiträge: 449
Registriert: 27.04.2008 13:54:20

iptables : Kommunikation zwischen rechnern einschränken

Beitrag von speefak » 19.05.2019 17:21:30

Hallo,

Ein Rechner mit Debian im LAN soll nur mit einem Gateway (Ip-Cop) kommunizieren und Internetzugang haben. Der Gateway ist dabei nicht der Router auf dem der DHCP Server für das restliche LAN läuft. Auf dem Rechner ist der Gateway als Gateway incl DNS konfiguriert ( Manuelle IP Konfiguration ). Einige Programme scheinen jedoch die Internetverbindung des DHCP Servers zu nutzen, da als WAN IP die Router IP angezeigt wird und nicht die WAN IP des Gateways.

Ich frage mich wie das sein kann, wo doch das Debian System mit den Gateway Daten konfiguriert ist. Browser, SSH, FTP und co laufen alle über den Gateway. Nur Pidgin nicht. Das zeigt mir in den Einstellungen unter "automtisch erkannte IP Adresse" die IP des Routers.

Aus dem Grund würde ich gerne die Verbindungsmöglichkeiten des Rechners einschränken sodass Dieser nur noch mit dem Gateway kommunizieren ( keine Porteinschränkungen ) kann und sonst alles an Ein,- und Ausgehenden Verbindungen verwirft/blockt.


Realisieren kann man das über IPTables aber wie ?

In die INPUT Chain müsste die Regel, alles zu verwerfen außer loopback und Router ( Bsp. 1.1.1.1. )
In die OUTPUT Chain müsste die Regel alles zu verwerfen außer Router ( Bsp 1.1.1.1 )

Code: Alles auswählen

# local connections via loopback
iptables -A OUTPUT -o lo  -j ACCEPT
iptables -A OUTPUT -o 127.0.0.1  -j ACCEPT
# Drop any other traffic
iptables -P OUTPUT DROP
iptables -P INPUT DROP
# Allow all bidirectional traffic
iptables -A INPUT  -j ACCEPT -i 1.1.1.1
iptables -A OUTPUT -j ACCEPT -o 1.1.1.1
ist das so richtig oder habe ich etwas vergessen ?
Zuletzt geändert von speefak am 20.05.2019 08:24:36, insgesamt 3-mal geändert.

Benutzeravatar
bluestar
Beiträge: 2346
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von bluestar » 19.05.2019 17:47:19

Hängt hinter dem Router B denn noch ein Netzwerk? In das der Rechner A zugreifen soll?

Weil du sprichst ja von Router B, nicht von Rechner B

Benutzeravatar
speefak
Beiträge: 449
Registriert: 27.04.2008 13:54:20

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von speefak » 19.05.2019 18:34:17

Nein, es ist ein und das gleiche Netzwerk, Rechner A soll nur mit dem Router kommunizieren dürfen. Rechner A darf weder jeglichem Netzwerkteilnehmer noch darf ein Netzwerkteilnehmer mit Rechner A kommunizieren dürfen.

mit o.g. Konfiguration ist jegliche Kommunikation gesperrt, auch die mit dem Router ( 1.1.1.1 ), wie teile ich IPTables nun mit das sämtliche Traffic von und zu Router ( 1.1.1.1 ) erlaubt sein soll ?

PS : Bezeichnungen geändert
Zuletzt geändert von speefak am 19.05.2019 19:21:14, insgesamt 1-mal geändert.

TomL

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von TomL » 19.05.2019 19:10:27

speefak hat geschrieben: ↑ zum Beitrag ↑
19.05.2019 18:34:17
mit o.g. Konfiguration ist jegliche Kommunikation gesperrt, auch die mit dem Router ( 1.1.1.1 ), wie teile ich IPTables nun mit das sämtliche Traffic von und zu Router ( 1.1.1.1 ) erlaubt sein soll ?
Nein, es ist nicht jegliche Kommunikation gesperrt, die mit dem Router wird wohl durchaus funktionieren..... in dem Sinne, dass der PC irgendwelche auf dem Router angebotenen Ressourcen oder Services wie NAS oder FTP nutzen könnte. Du müsstest das Problem genauer beschreiben.... was soll denn beispielsweise "mit" dem Router erlaubt sein? Welche Ressourcen oder Services bietet denn der Router, die dieser PC nutzen soll?

Benutzeravatar
speefak
Beiträge: 449
Registriert: 27.04.2008 13:54:20

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von speefak » 19.05.2019 19:22:50

Problem gelöst :

Code: Alles auswählen

iptables -I INPUT -p ALL -s 1.1.1.1 -j ACCEPT
iptables -I OUTPUT -p ALL -d 1.1.1.1 -j ACCEPT

Benutzeravatar
speefak
Beiträge: 449
Registriert: 27.04.2008 13:54:20

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von speefak » 19.05.2019 20:57:58

Problem irgendwie doch nicht gelöst.

mit der konfiguration funktionieren alle Protokolle der Server die sich im LAN befinden und erlaubt sind ( 1.1.1.1 ). Eine Verbindung über den Router ins Internet funktioniert jedoch nicht :roll:

iptables -S :

Code: Alles auswählen

-P INPUT DROP
-P FORWARD ACCEPT
-P OUTPUT DROP
-A INPUT -s 1.1.1.1/32 -j ACCEPT
-A OUTPUT -d 1.1.1.1/32 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -o 127.0.0.1 -j ACCEPT

Benutzeravatar
speefak
Beiträge: 449
Registriert: 27.04.2008 13:54:20

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von speefak » 19.05.2019 22:45:27

TomL hat geschrieben: ↑ zum Beitrag ↑
19.05.2019 19:10:27
speefak hat geschrieben: ↑ zum Beitrag ↑
19.05.2019 18:34:17
mit o.g. Konfiguration ist jegliche Kommunikation gesperrt, auch die mit dem Router ( 1.1.1.1 ), wie teile ich IPTables nun mit das sämtliche Traffic von und zu Router ( 1.1.1.1 ) erlaubt sein soll ?
Nein, es ist nicht jegliche Kommunikation gesperrt, die mit dem Router wird wohl durchaus funktionieren..... in dem Sinne, dass der PC irgendwelche auf dem Router angebotenen Ressourcen oder Services wie NAS oder FTP nutzen könnte. Du müsstest das Problem genauer beschreiben.... was soll denn beispielsweise "mit" dem Router erlaubt sein? Welche Ressourcen oder Services bietet denn der Router, die dieser PC nutzen soll?
Es geht konkret um Folgende Situation:

Ein Rechner mit Debian im LAN soll nur mit einem Gateway kommunizieren. Der Gateway ist dabei nicht der Router auf dem der DHCP Server für das restliche LAN läuft. Auf dem Rechner ist der Gateway als Gateway incl DNS konfiguriert ( Manuelle IP Konfiguration ). Einige Programme scheinen jedoch die Internetverbindung des DHCP Servers zu nutzen, da als WAN IP die Router IP angezeigt wird und nicht die WAN IP des Gateways.

Ich frage mich wie das sein kann, wo doch das Debian System mit den Gateway Daten konfiguriert ist. Browser, SSH, FTP und co laufen alle über den Gateway. Nur Pidgin nicht. Das zeigt mir in den Einstellungen unter "automtisch erkannte IP Adresse" die IP des Routers.

Aus dem Grund würde ich gerne die Verbindungsmöglichkeiten des Rechners einschränken sodass Dieser nur noch mit dem Gateway kommunizieren ( keine Porteinschränkungen ) kann und sonst alles an Ein,- und Ausgehenden Verbindungen verwirft/blockt.

Benutzeravatar
bluestar
Beiträge: 2346
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von bluestar » 19.05.2019 23:02:55

Soll der Rechner ins Internet dürfen?

TomL

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von TomL » 19.05.2019 23:35:40

bluestar hat geschrieben: ↑ zum Beitrag ↑
19.05.2019 23:02:55
Soll der Rechner ins Internet dürfen?
Ich würde ja jetzt raten "eigentlich nicht", denn das hat er ja ausdrücklich gesperrt.... insofern kanns ja auch eher kein Gateway sein, sondern nur ein mysteriöses System, was irgendwas anbietet, was nix mit dem Internet zu tun hat.

Aber da seine Anforderungen ja eher dem Prinzip Geheimhaltung entsprechen und ich nicht mehr so viel Lust auf Glaskugel und Raten habe, gehen ich jetzt mal lieber pennen...... :wink:

Benutzeravatar
speefak
Beiträge: 449
Registriert: 27.04.2008 13:54:20

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von speefak » 20.05.2019 08:22:30

Ja doch der Rechner soll ins Internet dürfen, allerdings nur über den IP-Cop Gateway und nicht über den Router. Alles bis auf den Gateway ( der mit dem Internet verbunden ist ) soll gesperrt werden.

Benutzeravatar
bluestar
Beiträge: 2346
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von bluestar » 20.05.2019 08:58:14

Dann musst du natürlich in der Firewall dem Rechner den Zugriff auf alle öffentlichen IPs erlauben und ausschließlich den Traffic zu den privaten IP-Adressen sperren, wobei bei letzterem musst du natürlich noch eine Ausnahme konfigurieren für den DNS-Server auf deinem Gateway .... Und du solltest prüfen, dass nicht dein "eigentlicher" Router noch IPv6 Router Advertisements in dein LAN sendet, sonst läuft der Traffic halt über IPv6 an deinen Regeln vorbei.

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: iptables : Kommunikation zwischen rechnern einschränken

Beitrag von mat6937 » 20.05.2019 09:52:30

speefak hat geschrieben: ↑ zum Beitrag ↑
19.05.2019 17:21:30
Realisieren kann man das über IPTables aber wie ?

In die INPUT Chain müsste die Regel, alles zu verwerfen außer loopback und Router ( Bsp. 1.1.1.1. )
In die OUTPUT Chain müsste die Regel alles zu verwerfen außer Router ( Bsp 1.1.1.1 )

Code: Alles auswählen

# local connections via loopback
iptables -A OUTPUT -o lo  -j ACCEPT
iptables -A OUTPUT -o 127.0.0.1  -j ACCEPT
# Drop any other traffic
iptables -P OUTPUT DROP
iptables -P INPUT DROP
# Allow all bidirectional traffic
iptables -A INPUT  -j ACCEPT -i 1.1.1.1
iptables -A OUTPUT -j ACCEPT -o 1.1.1.1
ist das so richtig oder habe ich etwas vergessen ?
Die default policy der INPUT und OUTPUT chains kannst Du auf ACCEPT lassen.
Wichtig ist die Reihenfolge der Regeln. Z. B.:

Code: Alles auswählen

iptables -I INPUT 1 -i <input-Interface> -s 1.1.1.1 -j ACCEPT
iptables -I INPUT 2 -i <input-Interface> -s 1.1.1.0/24 -j REJECT

Code: Alles auswählen

iptables -I OUTPUT 1 -o <output-Interface> -d 1.1.1.1 -j ACCEPT
iptables -I OUTPUT 2 -o <output-Interface> -d 1.1.1.0/24 -j REJECT

Code: Alles auswählen

ip6tables -I INPUT 1 -i <input-Interface> -j REJECT
ip6tables -I OUTPUT 1 -o <output-Interface> -j REJECT

Antworten