Linux 15.028 Themen, 107.048 Beiträge

Netzwerkverbindungen stark einschränken

PingOfDeath / 3 Antworten / Baumansicht Nickles

Hallo :)

Ich möchte ein Ubuntu-Linux so einrichten, dass es nur noch auf einem bestimmten IP-Bereich zugreifen kann (192.168.1.0/24).
Zusätzlich soll es dem System möglich sein einen VPN-Tunnel aufzubauen, über diesen soll dann alles möglich sein. Es ist nur wichtig, dass alles was mit Internet zu tun hat über den VPN-Tunnel geht (der VPN-Server hat eine feste öffentliche IP).

Wäre nett wenn mir jemand einen Tipp geben könnte wonach ich suchen muss oder es mir schnell erklärt ;-)

Gruß, PingOfDeath

bei Antwort benachrichtigen
the_mic PingOfDeath „Netzwerkverbindungen stark einschränken“
Optionen

Das lässt sich mit iptables wunderbar realisieren. Du blockierst den Zugriff über die echte Hardware (vermutlich eth0) ausser auf 192.168.1.0/24 und lässt über VPN (vermutlich tun0) alles frei.

ungetesteter Schnellschuss:
iptables -P OUTPUT -o eth0 -j DROP
iptables -P INPUT -i eth0 -j DROP
iptables -A OUTPUT -o eth0 -d 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -i eth0 -d 192.168.1.0/24 -j ACCEPT


Die ersten zwei Zeilen sperren allen Verkehr für eth0 als default rule, die nächsten zwei geben explizit 192.168.1.0/24 frei. Da alle anderen Netzwerkkarten davon nicht berührt sind, ist der Verkehr über VPN, das üblicherweise tun-Geräte nutzt, von diesen Regeln nicht betroffen.

cat /dev/brain > /dev/null
bei Antwort benachrichtigen
PingOfDeath Nachtrag zu: „Netzwerkverbindungen stark einschränken“
Optionen

Danke für die schnelle Antwort! Scheint ja recht einfach zu handhaben ;-)

Gruß, PingOfDeath

bei Antwort benachrichtigen
the_mic PingOfDeath „Danke für die schnelle Antwort! Scheint ja recht einfach zu handhaben - Gruß,...“
Optionen

Ich hab noch nen Denkfehler drin. Zum VPN-Server wirst du natürlich weiterhin über eth0 verkehren müssen, daher musst du den auch freigeben. Du kannst sogar nur den/die für VPN benötigten Ports freigeben, in diesem Fall z.B. für OpenVPN. Andere VPNs setzen andere Ports voraus. Alternativ kannst du die Parameter -p, --dport und --sport auch einfach weglassen, dann ist aber jeglicher Verkehr mit dem VPN-Server gestattet:

iptables -A OUTPUT -o eth0 -d ip_des_vpn_servers -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -i eth0 -d ip_des_vpn_servers -p udp --sport 1194 -j ACCEPT


Und falls du Mist gebaut oder ich dir hier Blödsinn erzählt hab, kannst du bestehende iptables-Regeln einfach löschen mittels
iptables -F
:-)

cat /dev/brain > /dev/null
bei Antwort benachrichtigen