Einträge mit Schlagwort ‘nortel’

vpnc & Nortel Contivity VPN

Freitag, April 2nd, 2010

Um unter Ubuntu 9.04 (Jaunty Jackalope), und wahrscheinlich auch neueren Versionen, eine Verbindung zu einem Nortel Contivity VPN herzustellen benötigt es einen veränderten VPN Client, der leider nicht standardmäßig als Paket im Apt-Repository zur Verfügung steht. Speziell geht es darum, dass das Paket vpnc kompatibel ist zu cisco3000 VPN Concentrator (Cisco’s EasyVPN equipment) und nicht zu Nortel Contivity VPN. Der Nortel Client ist leider nicht kostenlos verfügbar und somit entstand ein zu Nortel kompatibler vpnc, der unter svn.unix-ag.uni-kl.de exportiert werden kann:

# Abhängigkeiten
root@host:/opt aptitude install libgcrypt-dev gnutls-dev
# Nortel Client exportieren, zum Erscheinen dieses Eintrages lag Rev. 449 vor
root@host:/opt svn export http://svn.unix-ag.uni-kl.de/vpnc/branches/vpnc-nortel/
# Nortel Client kompilieren u. installieren
root@host:/opt/vpnc-nortel make
root@host:/opt/vpnc-nortel make install

Nach erfolgreicher Kompilierung geht es an den schwierigsten Teil, der allerdings nur dann schwierig ist, wenn man wenig Informationen zu dem vorliegenden Netzwerk hat. Es gibt massig Threads in diversen Foren (auch im Ubuntu Forum) die sich mit diesem Thema beschäftigen. Leider geht selten hervor, welche Anforderungen die Umgebung an den Client stellt. Ich möchte hier kurz die Anforderungen erläutern, die sich mir stellten:

  • IPSec gateway: bekannt
  • IPSec ID: bekannt
  • IPSec secret: bekannt
  • Xauth username: bekannt
  • IKE DH Group: unbekannt (default dh2)
  • IKE Authmode: bekannt
  • Passwort + SecureID-code: bekannt

Bei den ersten 4 Informationen handelt es sich um den Host, zu dem die Verbindung hergestellt werden soll, Gruppen-Name + Gruppen Passwort, sowie den Username (der übrigens auch einen Slash enthalten kann; Groß-/Kleinschreibung wird ignoriert). Mit Hilfe der Dokumentation kommt man schnell an die nötigen Konfigurationswerte:

user@host:/opt/nortel-vpnc$ ./vpnc --long-help

IKE DH Group: es gibt 3 Möglichkeiten (1, 2, 5)
IKE Authmode: gpassword steht für Nortel Group Security - Group Password Authentication

Das führt nun folgender Konfiguration:

IPSec gateway [gateway]
IPSec ID [groupname]
IPSec secret [grouppassword]
Xauth username [username]
Vendor nortel
Script /opt/vpnc-nortel/vpnc-script
IKE Authmode gpassword

Diese Konfiguration liegt bei mir unter /etc/vpnc.conf und gehört root. Durch die Option “Script /opt/vpnc-nortel/vpnc-script” wird vpnc mitgeteilt, dass die Verbindung mit Hilfe unseres Scripts unter /etc/opt/vpnc-nortel aufgebaut wird und nicht mit einem unter /etc/… vermuteten Script. Auf einen symbolischen Link dorthin oder sogar eine Kopie des Scripts kann somit verzichtet werden. Die Konfiguration generell ist sinnvoll, da man nun beim Starten des Clients nur noch das Passwort eingeben muss. Man könnte natürlich noch den Username weglassen um verschiedene Logins zu ermöglichen.

Startet man nun das Script:

user@host:/opt/vpnc-nortel$ sudo ./vpnc

Gibt man sein Passwort, direkt gefolgt von dem SecureID-Code ein (ohne Leerzeichen, Plus-Zeichen, etc.). Die Meldung: “VPNC started in background (pid: 10636)…” teilt nun mit, dass eine Verbindung aufgestellt wurde.
Mit ifconfig kann man nun ein neues Interface mit der zugeteilten IP Adresse sehen (z.B. tun0) sowie mit dem Befehl route die Routentabelle die nun das neue Interface verwenden sollte.

Die Verbindung wird geschlossen mit:

user@host:/opt/vpnc-nortel$ sudo ./vpnc-disconnect

Bei Verbindungsprobemen kann der Debug-Modus helfen:

user@host:/opt/vpnc-nortel$ sudo ./vpnc --debug [0/1/2/3/99]