vpnc beim Aufbau einer Netzwerkverbindung über den Network Manager automatisch ausführen

Avatar von Christoph Langner

2 Min. Lesezeit

23 Aufrufe

Ein Dispatcher-Skript für den NetworkManager baut die vpnc-Verbindung ins Uni-Netz automatisch auf, sobald der Rechner eine passende IP bekommt.

Network Netzwerk

Wie ich schon im Artikel VPN der Universität Karlsruhe über vpnc beschrieben habe, ist es möglich, das VPN der Universität Karlsruhe auch mit freier Software zu nutzen, so dass man von der Installation des Cisco-VPN-Clients absehen kann. Allerdings ist es unbequem, die VPN-Verbindung immer von Hand über ein Terminal aufbauen zu müssen. Doch dies lässt sich mit einem so genannten Dispatcher-Skript für den Network-Manager automatisieren.

UPDATE: Dieser Artikel ist veraltet! Sollten Sie über eine Internetsuche auf diesen Artikel gestoßen sein, so schauen Sie sich bitte besser den Artikel VPN der Uni-Karlsruhe mit vpnc (überarbeitet)… an. Dieser enthält die selben Informationen, ist jedoch auf einem aktuellen Stand!

Ich möchte es nochmal kurz betonen. Es ist für den Zugang zum VPN der Uni Karlsruhe zwingend notwendig, eine selbst kompilierte Version von vpnc zu nutzen. Eine Anleitung dazu findet sich im oben beschriebenen Artikel. Ist vpnc in der aktuellen Version installiert, legt man über…

$ gksudo gedit /etc/NetworkManager/dispatcher.d/02uni-vpnc

…ein Skript an, das beim Aufbau einer Verbindung über den NetworkManager automatisch ausgeführt wird. Als Inhalt fügt man dieses hier ein.

#!/bin/bash
#/etc/NetworkManager/dispatcher.d/02uni-vpnc

# Aktion einlesen
INTERFACE=$1
ACTION=$2

# IP herausfinden
IP=$(ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://')
IP_START=$(echo $IP | awk -F. '{print $1}')

# Funktionen durchführen, je nach Aktion eine andere
case "$2" in
  up)
    # vpnc starten, falls im Uni Netzwerk
    if [ $IP_START = 129 ]; then
      vpnc
    fi
    ;;
    
  down)
    # vpnc stoppen
    if [ "$(pidof vpnc)" ]; then
      vpnc-disconnect
    fi
    ;;
    
  pre-up)
    # einen vorher laufenden vpnc stoppen
    if [ "$(pidof vpnc)" ]; then
      vpnc-disconnect
      killall vpnc
    fi
    ;;
    
  post-down)
    # vpnc wirklich stoppen, falls abgestürzt
    if [ "$(pidof vpnc)" ]; then
      vpnc-disconnect
      killall -9 vpnc
    fi
    ;;
    
  *)
    echo $"Usage: $0 {up|down|pre-up|post-down}"
    exit 1
    ;;
esac

Hat man die Dateirechte über…

$ sudo chmod +x /etc/NetworkManager/dispatcher.d/02uni-vpnc

…angepasst, dann wird spätestens nach einem Neustart des Systems bei einem Verbindungsaufbau überprüft, ob man eine IP aus dem Bereich 192.* bekommen hat. Falls dies der Fall sein sollte, wird vpnc ausgeführt und die Verbindung zum VPN steht. Man muss jetzt also keinen Finger mehr krümmen, um in das Netzwerk der Uni zu kommen. Rechner anschließen und fertig.

Ähnliche Beiträge

3 Kommentare zu „vpnc beim Aufbau einer Netzwerkverbindung über den Network Manager automatisch ausführen“

  1. Avatar von Jeldrik

    Hallo,

    ich verstehe das Skript nicht ganz. Woran wird genau erkannt, ob eine Verbindung zum Uni-wlan besteht?
    Ich würde gerne das Skript für meine UNI (FU Berlin) anpassen.

    In dem letzten Absatz hört es sich für mich so an, als wäre das Kriterium bloß, ob die IP aus dem Adressenbereich 192.*.*.* kommt. Das wäre aber für mich ein sehr schlechtes Kriterium, weil ich in fast jedem wlan und lan eine IP aus diesem Bereich bekomme.
    Zu Hause will ich jedoch keine VPN-Verbindung aufbauen und im Internet-Cafe auch nicht. Ich bräuchte ein Kriterium, dass das Uni-wlan am besten über den Namen oder ähnliches erkennt.

    Leider kenne ich mich mit solchen Skripten gar nicht aus. Wäre cool, wenn du mir helfen könntest.
    Und vielen Dank für deine coole Anleitung für vpnc mit Openssl.

    Viele Grüße
    Jeldrik

  2. Avatar von Christoph

    Hallo Jeldrik. Diese Version des Skriptes ist aktueller. Bitte nimm die neuere Version. Dort überprüfe ich die ESSID und den Anfang der IP. Die Uni KA nutzt eigene IPs aus dem Bereich 129.x.y.z. Diese bekommst du nur an der Uni Karlsruhe. Man könnte den Filter sicherlich einschränken. Doch für den „Normalfall“: Zuhause IPs aus dem Bereich der privaten Netze und eben das VPN der Uni reichts.

  3. Avatar von Jeldrik

    In deiner Erklärung ist ein kleiner Fehler, weshalb ich das nicht verstanden hatte. Im letzten Absatz schreibst, du dass das Script überprüft, ob die IP mit 192.* beginnt. Das muss natürlich 129.* heißen.
    Wegen dem Zahlendreher war ich auch verwirrt. Die Überprüfung macht dann auch Sinn.

    Ich werde mal gucken, was für eine IP mir die Uni zu weist, wenn ich mich in das WLan einloge. Wenn das wie bei euch ein spezieller IP-Bereich ist, dann ist dein Script natürlich wunderbar.

Schreibe einen Kommentar

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

Markdown wird unterstützt: **fett**, _kursiv_, [Linktext](URL), `Code`, Zeilen mit - für Listen, 1. für nummerierte Listen, dreifache Backticks für Codeblöcke.

Sicherheitsabfrage: Welches Logo ist das?

Über den Blog

Seit 2006 probiere ich hier aus, was Linux, freie Software und die passende Hardware so hergeben – von Distributions-Tests bis zum Raspberry-Pi-Projekt. Praxisnah statt bloßem Nachrichtenticker.

Zuletzt auf Mastodon

Scene Composer in Aktion: Ein Screenshot wird geladen, in verschiedene 3D-Szenen wie Café, Gaming-Desktop, Homeoffice und Podcast-Studio eingesetzt, gedreht und gezoomt. Anschließend wird eine Vorschau gerendert.

Ich finde Screenshots als Aufmacher oft langweilig. In der Vergangenheit habe ich daher oft den Bildschirm im wahrsten Sinne des Wortes abfotografiert. Das bringt etwas Leben in die Artikel –…

Kategorien

Blog unterstützen

Gefällt dir, was du hier liest? Mit einer kleinen Spende hilfst du, Hosting und neue Testgeräte zu finanzieren – und sorgst nebenbei für den nötigen Kaffee.

Linux und Ich — vpnc beim Aufbau einer Netzwerkverbindung über den Network Manager automatisch ausführen
https://linuxundich.de/gnu-linux/vpnc-beim-aufbau-einer-netzwerkverbindung-uber-den-network-manager-automatisch-ausfuhren/ — gedruckt am 25. September 2026