Statische Routen unter Ubuntu automatisieren

Hallo zusammen,

ich musste für einen Kunden ein VPN auf seinen Webserver einrichten und dies durch ein eigenes Gateway schleusen. Da der Server jedoch eine öffentliche IP mit eigenem Default Gateway hat, auf diesem jedoch nicht das VPN eingerichtet wurde. Musste nun ein weg zum VPN Router gefunden werden…

Dafür haben wir in den Server eine weitere Netzwerkkarte eingebaut. Es würde auch ohne in der Theorie gehen, jedoch nicht empfehlenswert was die Sicherheit angeht. Das Interface muss nun ganz normal eine statische IP-Adressen konfiguriert bekommen. Da wir jedoch unser VPN Netzwerk durch eine andere Route im Netz leiten wollen müssen wir nun eine Route von Hand anlegen. Dies könnten wir nach jedem Systemneustart von Hand machen oder über ein Script in die Startreihenfolge. Als Klassiker wird dieses Script in die rc.local geschrieben. Jedoch ist dieser weg nicht der schönste. Sinnvoller ist es das Script in die ifup Reihenfolge zu bringen. Unter dem Verzeichnis /etc/network  findet man folgende Unterordner:

if-down.d if-post-down.d  if-pre-up.d  if-up.d

Kurz zur Erklärung der einzelnen sei gesagt, die down Scripte werden beim „ausschalten“ des Netzwerkinterfaces ausgeführt. Und die UP Scripte beim starten. Dabei gibt es noch pre und post. Bei pre werden die Scripte noch vor dem Einrichten der Netzwerkkarte ausgeführt. Bei post einfach danach.

Wir legen uns ein Script unter dem Ordner if-up.d an:

nano /etc/network/if-up.d/vpn-routes

Wichtig ist hierbei, das wir KEINE ENDUNG mit angeben. Da sonst das Script nicht ausgeführt wird. Nun trage ich folgendes in die Datei ein:

#!/bin/bash
if [ "$IFACE" == "eth2" ] ;
 then /sbin/route add -net remotenetzwerk netmask 255.255.255.0 gw gatewayip $
fi

Das Script muss natürlich noch für eure Bedürfnisse angepasst werden. So muss das Interface eth2 unter Umständen angepasst werden. Jetzt wird automatisch beim Einrichten der Netzwerkkarte eine Router für euch erstellt.

Wollt ihr das die Router beim runterfahren des Interfaces wieder gelöscht wird, so könnt ihr ein Script unter /etc/network/if-down.d/vpn-routes erstellen und die Route per route del löschen. Brauche ich bei mit allerdings nicht.

Hoffe der Artikel bringt euch etwas weiter… Über Feedback würde ich mich freuen….

Schreib einen Kommentar

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