Simples Gateway mit Debian einrichten

Ein simples Gateway ist mit Debian sehr schnell eingerichtet. Zu Testzwecken habe ich einen virtuellen Server mit Debian Lenny installiert, welcher nun als Gateway zwischen den einzelnen Clients und dem Router im Netzwerk fungiert. Der Router (bei mir ein Alix mit pf Sense) ist das Gateway ins Internet.

Der Vorteil dieses zweiten Gateways ist, dass der Datenverkehr zwischen Clients und Router genau kontrolliert werden kann. Zum Beispiel könnten Videos von Youtube geblockt werden, jedoch können so auch die Clients geschützt werden (Dies macht im Moment aber noch mein Router). Dazu müssen nur die nötigen Programme installiert und konfiguriert werden, dazu später noch ein kleiner Tipp.

Solche Funktionen sind in grösseren Unternehmen zu finden. Dort sind diese Funktionen aber durch eine professionelle Firewall realisiert, welche gleich mit dem Internet verbunden ist. Damit ich aber beruhigt testen kann, steht mein virtueller Server (das Gateway für den Client) noch hinter einem Router, welcher mit dem Internet verbunden ist und mein Heimnetzwerk schützt. Der Router ist das Gateway für den virtuellen Server ins Internet.

Alles was benötigt wird sind zwei Netzwerkkarten und ein Debian (geht sicher auch auf anderen Linuxdistributionen).

Zuerst werden die Netzwerkkarten konfiguriert unter /etc/networking/interfaces (Die Datei kann je nach Distribution variieren):

# in
auto eth0
allow-hotplug eth0

iface eth0 inet static
        address 192.168.0.210
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

# out
auto eth1

iface eth1 inet static
        address 192.168.0.211
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

Das auto eth1 ist wichtig, damit die Netzwerkkarte beim Booten automatisch aktiviert wird. Erst als ich diese Zeile hinzugefügt habe, wurde auch die zweite Netzwerkkarte beim Booten automatisch aktiviert.

Nachdem die zwei Netzwerkkarten konfiguriert sind muss nur noch das Routing aktiviert werden mit

echo 1 > /proc/sys/net/ipv4/ip_forward

Das Routing ist jetzt aber nur temporär aktiviert. Nach einem Reboot ist die Einstellung verloren. Um das Routing dauerhaft zu aktivieren wird das folgende in die Datei /etc/sysctl.conf eingetragen:

net.ipv4.conf.default.forwarding=1
net.ipv4.ip_forward = 1

Nach einem Reboot kann mit

cat /proc/sys/net/ipv4/ip_forward

geprüft werden, ob das Routing automatisch aktiviert wurde.

Das simple Gateway für den Client ist nun eingerichtet und einsatzbereit.

Nun muss am Client nur noch das Standardgateway auf die IP 192.168.0.210 gestellt werden. Entweder trägt man die IP für das Standardgateway beim Client manuell ein oder man hat einen klugen Router welcher das Standardgateway gleich per DHCP vergeben kann.

Ob das Ganze nun über den Server geroutet wird kann schnell am Client mit tracert getestet werden.

C:\Users\silvan>tracert www.google.ch
Routenverfolgung zu www.l.google.com [209.85.129.147] über maximal 30 Abschnitte:

1    <1 ms    <1 ms    <1 ms  gateway_in.meinheimnetzwerk.local [192.168.0.210]
2    <1 ms    <1 ms    <1 ms  internet.meinheimnetzwerk.local [192.168.0.1]
3     6 ms     6 ms     8 ms  10.179.192.1
...

Kann der Router das Standardgateway nicht gleich per DHCP vergeben, könnte der DHCP Dienst zum Beispiel gleich auf dem Gateway (mein virtueller Server) installiert werden. Somit habe ich mit dem virtuellen Server eine kleine Spielwiese, auf welcher ich verschiedene Dienste wie zum Beispiel DNS, DHCP, Proxy, usw. austesten kann.

Das Ziel ist, dass der Router später nur noch Verkehr weiterleitet und mein Heimnetzwerk vor dem Internet schützt. Alle anderen Dienste können langsam auf dem virtuellen Server getestet und anschliessend gezügelt werden.

Zur Kontrolle des Verkehrs auf dem Gateway können zum Beispiel Sniffer oder IDS (Intrusion Detection System) eingesetzt werden. Ein IDS ist das bekannt Open Source Tool Snort.

Wenn ich noch auf verschiedene Sniffer und IDS eingehen würde, würde dies den Rahmen dieses Tutorials sprengen. Zu Snort werde ich in Zukunft noch einen Beitrag schreiben, da ich es zu Hause bestimmt einrichten werde :).

Ein wichtiger Unterschied zwischen einem Sniffer und einem IDS ist, dass der Sniffer nur Verkehr loggen, das IDS aber Verkehr auch blocken, rejecten, Angriffe erkennen, usw. kann.

Und nun viel Spass mit dem selbstgebastelten Gateway :).

0 Antworten

Hinterlassen Sie einen Kommentar

Wollen Sie an der Diskussion teilnehmen?
Wir freuen uns über ihren Beitrag!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *