Seite wählen

OpenVPN unter Leopard ohne Tunnelblick

von | Aug 18, 2008 | Technology

Bernd hat neulich ja schon mal über OpenVPN geschrieben: Wie man damit beispielsweise die Internetzensur in China umgehen könnte. Wir setzten OpenVPN auch intern als VPN Lösung ein und verbinden damit die beiden Rechenzentren mit unserem Büro und ermöglichen den Notebook Usern von unterwegs Zugriff auf alle notwendigen Ressourcen. Der große Vorteil von OpnVPN in diesem Szenario ist, dass es den Client für alle wichtigen Betriebssysteme gibt: Linux, Windows und Mac OS X.
Für den Mac gibt es vor allem das Tunnelblick Projekt, das OpenVPN zusammen mit einer GUI ausliefert. Das Programm ist schnell und einfach zu installieren und erlaubt dem User die VPN Verbindungen selbst zu steuern. Leider ist die Version für Leopard sehr instabil, denn sie ist bei mir immer wieder abgestürzt, so dass ich OpenVPN manuell killen und dann Tunnelblick neustarten musste. Dazu kommt, dass ich die GUI eigentlich gar nicht brauche. Als ich noch ein Windows Notebook hatte, hab ich OpenVPN als Dienst installiert, so dass es, wann immer möglich, automatisch eine VPN Verbindung aufgebaut hat.
Das wollte ich auch unter dem Mac wieder haben: Ein stabiles OpenVPN, keine GUI und das ganze vollkommend automatisch und transparent laufend. Mit MacPorts geht das und hier ist die Anleitung, wie man das ganze unter Leopard installiert und konfiguriert:

  1. Installation von Mac Ports
    1. Installieren der Apple Xcode 3.0 Developer Tools von der Apple CD
    2. Installieren der Apple X11 User und SDK Pakete von der Apple CD
    3. Herunterladen und Installieren des DMG Archivs von der MacPorts Website
  2. Installation von OpenVPN unter MacPorts
    sudo port selfupdate
    sudo port install openvpn2
  3. Installation des TUN/TUP Treibers für OS X von SourceForge
  4. Anlegen der Konfigurationsdateien
    sudo mkdir /etc/openvpn2
  5. Nun erstellt man sich eine entsprechende OpenVPN Kopnfiguration oder nimmt eine bestehende und kopiert dies, zusammen mit den Zertifikaten in diesen Ordner
  6. Als nächstes kann man OpenVPN testweise manuell starten:
    sudo /opt/local/sbin/openvpn2 /etc/openvpn2/myconfig.conf
  7. Wenn man möchte, dass OpenVPN automatisch als Demon startet, legt man sich eine entsprechende Datei an
    sudo touch /Library/LaunchDaemons/net.openvpn2.plist
  8. Und konfiguriert in der Datei seinen Demon:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
            "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
            <key>Label</key>
            <string>net.openvpn2</string>
            <key>OnDemand</key>
            <false/>
            <key>ProgramArguments</key>
            <array>
                    <string>/opt/local/sbin/openvpn2</string>
                    <string>--cd</string>
                    <string>/etc/openvpn2</string>
                    <string>--config</string>
                    <string>/etc/openvpn2/netways.conf</string>
            </array>
            <key>RunAtLoad</key>
            <true/>
            <key>TimeOut</key>
            <integer>90</integer>
            <key>WatchPaths</key>
            <array>
                    <string>/etc/openvpn2</string>
            </array>
            <key>WorkingDirectory</key>
            <string>/etc/openvpn2</string>
    </dict>
    </plist>
  9. Danach meldet man den Demon im System an, und er startet automatisch:
    sudo launchctl load -w /Library/LaunchDaemons/net.openvpn2.plist
  10. Ich hatte noch Probleme mit den Namensservern, aber da bei uns alle internen Namen sowieso über einen internen DNS Server aufgelöst werden, kann man /etc/resolver benutzen. Dazu legt man in diesem Verzeichnis pro Domain, für die man einen anderen Namensserver verwenden will, ein File an und schreibt dort seine Namensserver rein. Beispielsweise:
    touch /etc/resolver/int.meinefirma.de
    mit folgendem Inhalt:
    nameserver 192.168.1.10
    nameserver 192.168.1.11

Das wars. OpenVPN ist damit installiert und läuft im Hintergrund als Demon. Wenn es im Einzelfall Probleme mit OpenVPN gibt, killt man einfach den Demon und Launchd startet ihn dann automatisch wieder neu. OpenVPN baut im Hintergrund, sobald es das Gateway erreichen kann eine VPN Verbindung auf. Wichtig ist, dass man innerhalb von OpenVPN die passenden Routen setzt oder sie vom Server an den Client pushen lässt. Bei uns blockiert die Firewall im Büro das VPN Gateway, so dass es da keine Verbindung aufbauen kann. Es geht nur ausserhalb des Büros.
Bei mir läuft das jetzt mehr als 6 Monate sehr stabil. Immer wenn ich Probleme hatte und dachte es liegt an OpenVPN hat sich nachher herausgestellt, dass es doch etwas anderes war. Tunnelblick vorher, ist mir mindestens zweimal pro Tag abgestürzt.

Julian Hein
Julian Hein
Executive Chairman

Julian ist Gründer und Eigentümer der NETWAYS Gruppe und kümmert sich um die strategische Ausrichtung des Unternehmens. Neben seinem technischen und betriebswirtschaftlichen Background ist Julian häufig auch kreativer Kopf und Namensgeber, beispielsweise auch für Icinga. Darüber hinaus ist er als CPO (Chief Plugin Officer) auch für die konzernweite Pluginstrategie verantwortlich und stösst regelmässig auf technische Herausforderungen, die sonst noch kein Mensch zuvor gesehen hat.

13 Kommentare

  1. bernd

    sudo port install tuntaposx
    dann kann man tuntap auch über macports beziehen.

    Antworten
  2. Jens

    Da mir Tunnelblick auch zu instabil war und ich doch dann eher zu faul bin bei Bedarf von Hand den Tunnel aufzubauen habe ich folgende Alternative gefunden: http://www.viscosityvpn.com/
    Läuft bisher stabil…. 🙂

    Antworten
  3. Tobias

    Hallo,
    ich habe ein kleines Problem mit der Anleitung. Und zwar mit 7. Muss ich da irgendwas ändern? Oder passt das alles so?
    Und bei 8. sagt er mir, dass er die Datei nicht finden kann. Kann mir jemand helfen?
    Der Rest hat super geklappt.
    Danke euch mal.
    Grüße
    Tobias

    Antworten
  4. Julian Hein

    Hallo Tobias, danke für den Hinweis. Da war ein Tippfehler. Einmal hiess die Datei net.openvpn und einmal net.openvpn2. Das kann natürlich nicht gehen. Ich habs angepasst. Gruß, Julian

    Antworten
  5. Tobias

    @ Julian, super, danke Dir.
    Jetzt meckert er nur noch rum, weil ihm die Rechte an der Datei nicht so passen. Er meldet „Dubious ownership on file (skipping)“. Wie muss ich die Rechte an der Datei ändern, bzw. welche Rechte braucht mein User?
    Danke für Deine Hilfe.
    Grüße Tobias

    Antworten
  6. Bill

    @Jens
    Deine alternative läuft wirklich besser, danke dafür.

    Antworten
  7. Matthias

    Im Punkt 2 haben sich zwei kleine Fehler eingeschlichen (oder ein Fehler doppelt):
    Das Kommando muss jeweils „port“ lauten und nicht „ports“.
    sudo port selfupdate
    sudo port install openvpn2
    Vielen Dank
    Matthias

    Antworten
  8. Matthias

    Im Punkt 7 fehlte mir noch ein sudo
    sudo touch /Library/LaunchDaemons/net.openvpn2.plist
    Grüße
    Matthias

    Antworten
  9. Julian Hein

    Hallo Matthias,
    danke für die Hinweise, ich habe die Fehler korrigiert.
    Schönen Gruß,
    Julian

    Antworten
  10. Michael

    Hallo,
    warum braucht ihr Tunnelblick oder MacPorts?
    Der Leopard hat doch eine VPN Funktion.
    gruß
    Michael

    Antworten
  11. Julian Hein

    Michael: Hallo,
    warum braucht ihr Tunnelblick oder MacPorts?
    Der Leopard hat doch eine VPN Funktion.gruß
    Michael

    Naja, wenn Du auf der anderen Seite OpenVPN hast, dann brauchst Du auf Deinem Client auch irgendwas was OpenVPN sprechen kann.

    Antworten
  12. Tippfehler

    Danke für die Infos. Hab lange nach sowas gesucht… 🙂

    Antworten

Trackbacks/Pingbacks

  1. links for 2009-02-10 « /home/servrrockr - [...] OpenVPN unter Leopard ohne Tunnelblick - OpenVPN, Demon, Apple, MacPorts, Verbindung, Probleme, Tunn... (tags: mac vpn openvpn leopard macports)…
  2. This is not an exit » Setup openVPN on MacOS - [...] this guide didn’t work, i had a look on the official howto-page Step 3) Lauch the server as a…

Einen Kommentar abschicken

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

Mehr Beiträge zum Thema Technology

Kibana Sicherheits-Updates: CVSS:Critical

Und täglich grüßt das Murmeltier. Nein nicht ganz. Heute ist es  aus der Elastic Stack Werkzeugkiste Kibana, für das es ein wichtiges Sicherheits-Update gibt. Es besteht auf jeden Fall Handlungsbedarf! IMHO auch wenn ihr die "Reporting" Funktion deaktiviert habt. Der...