OpenVPN Client einrichten

  • Hallo,


    in diesem Tutorial möchte ich euch erkären, wie ich den OpenVPN Clienten bei mir erfolgreich installiert habe. Ich kann nicht sagen ob das mit anderen VPN Anbietern auch so funktioniert, ich wäre also froh um Rückmeldungen. Ich benutze den VPN Anbieter Nvpn.net. Ich habe dieses Tutorial auf raspian (wheezy) getestet.



    Also, als erstest müssen die Paketlisten aktualisiert werden

    Code
    1. sudo apt-get update && apt-get upgrade



    Danach laden wir OpenVPN herunter

    Code
    1. sudo apt-get install openvpn


    Von euerem VPN Anbieter bekommt ihr in den meisten Fällen eine .ovpn/.conf und eine .crt Datei.


    Diese müssen wir jetzt nach /etc/openvpn kopieren.
    Dazu erstellt ihr eine neue .conf Datei

    Code
    1. sudo nano /etc/openvpn/VPN.conf


    Hier fügt ihr den Inhalt der .conf/.ovpn Datei ein! (Mit CTRL-O und Enter speichern, und dann mit CTRL-X schliessen.)


    Dasselbe mit der .crt Datei

    Code
    1. sudo nano /etc/openvpn/Zert.crt


    Hier fügt ihr nun den Inhalt der .crt Datei ein! (Mit CTRL-O und Enter speichern, und dann mit CTRL-X schliessen.)




    Als nächstes erstellen wir eine Textdatei in der wir die Zugangsdaten für die VPN-Verbindung speichern.

    Code
    1. sudo nano /etc/openvpn/auth.txt


    In die Datei kommen dann

    Code
    1. Username
    2. Passwort


    Das ganze mit CTRL-O und danach Enter speichern und mit CTRL-C schliessen.


    Jetzt öffnen wir die .conf Datei (Achtung! Den richtigen Dateinamen einsetzen)

    Code
    1. sudo nano /etc/openvpn/VPN.conf



    Diese sollte dann so ähnlich aussehen (es kann auch z.B. ein Logo vom VPN Anbieter haben):


    Die Pfade in den eckigen Klammern müssen wir nun abändern!


    Pfad zur Datei mit den Login-Daten(wenn ihr alles wie im tut beschrieben gemacht habt): /etc/openvpn/auth.txt
    Pfad zu der .crt Datei: /etc/openvpn/Zert.crt
    Und wieder Wird die Datei mit CTRL-O, ENTER und CTRL-X gespeichert.


    Jetzt muss die Config noch in /etc/default/openvpn eintragen.

    Code
    1. sudo nano /etc/default/openvpn


    Am ende der Datei fügt ihr nun folgendes ein. (Zwischen den Gänsefüsschen muss der Name der .conf Datei stehen die gestartet werden soll)

    Code
    1. AUTOSTART="VPN"


    Und wieder Wird die Datei mit CTRL-O, ENTER und CTRL-X gespeichert.


    Jetzt könnt ihr entweder den daemon selber starten

    Code
    1. sudo /etc/init.d/openvpn start


    oder den Pi neustarten (dann wird das Skript automatisch ausgeführt)

    Code
    1. sudo shutdown -r now


    Ich hoffe das Tutorial hilft einigen von euch weiter!


    -tschoesi


    Zum Schluss möchte ich noch boandlkramer und dbv für ihr Hilfe danken!

    Edited once, last by tschoesi ().

  • Hallo tschoesi,


    ein schönes Tutorial, allerdings hätte ich noch ein paar kleine Verbesserungsvorschläge für dein Tutorial.


    - Du solltest vermerken mit welchen Betriebssystem du das getestet hast bzw. auf welches sich die Anleitung bezieht.
    - Es fehlt mir die Information mit welchem VPN-Provider die Anleitung letztendlich getestet wurde.
    - Ich gehe nicht davon aus, dass jeder VPN-Provider bereits fertige Konfigurationsdateien für OpenVPN anbietet.
    - Warum kopierst du die Konfigurationsdateien eigentlich so kompliziert auf den Raspberry Pi? Entweder direkt vom VPN-Provider mit wget herunterladen oder den Text aus den Dateien einfach ins SSH-Fenster kopieren.
    - Für die Fehlersuche wäre es vielleicht ganz hilfreicch wenn du noch die dazugehörige Log-Datei angeben würdest.


    Gruß Georg

  • Hallo,


    Warum startest du Openvpn nit über /etc/default/openvpn sondern per eigenem Init script ?
    Warum nutzt du Screen ?
    Das solltest du erklären.


    Gruß
    Peter

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?


    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.


  • - Du solltest vermerken mit welchen Betriebssystem du das getestet hast bzw. auf welches sich die Anleitung bezieht. [Blocked Image: http://dvr-studio-hd-3.haenlein-software.com/hilfe/images/0/0e/Zeitl_H%C3%A4kchen.jpg]
    - Es fehlt mir die Information mit welchem VPN-Provider die Anleitung letztendlich getestet wurde. [Blocked Image: http://dvr-studio-hd-3.haenlein-software.com/hilfe/images/0/0e/Zeitl_H%C3%A4kchen.jpg]
    - Ich gehe nicht davon aus, dass jeder VPN-Provider bereits fertige Konfigurationsdateien für OpenVPN anbietet.
    - Warum kopierst du die Konfigurationsdateien eigentlich so kompliziert auf den Raspberry Pi? Entweder direkt vom VPN-Provider mit wget herunterladen oder den Text aus den Dateien einfach ins SSH-Fenster kopieren. [Blocked Image: http://dvr-studio-hd-3.haenlein-software.com/hilfe/images/0/0e/Zeitl_H%C3%A4kchen.jpg]
    - Für die Fehlersuche wäre es vielleicht ganz hilfreicch wenn du noch die dazugehörige Log-Datei angeben würdest.


    Alle mir bekannten VPN Provider bieten eine solche Konfigdatei an.
    Log kommt noch, ist jetzt gerade etwas unpraktisch.
    Aber danke für deine Verbesserungen!



    Warum startest du Openvpn nit über /etc/default/openvpn sondern per eigenem Init script ?


    Openvpn soll immer beim Systemstart gestartet werden (ohne weitere Benutzereingaben), darum dieses Skript.


  • Openvpn soll immer beim Systemstart gestartet werden (ohne weitere Benutzereingaben), darum dieses Skript.


    Dafür ist die /etc/default/openvpn da.


    Dort trägst du ein welche Config gestartet werden soll.
    Openvpn wird dann über das Openvpn Initscript gestartet / Gestoppt (/etc/init.d/openvpn)
    Das zusätzliche Initscript ist also Überflüssig.



    Und wofür Screen ?

    Offizieller Schmier und Schmutzfink des Forum.
    Warum einfach wenn's auch schwer geht ?


    Kein Support per PN !
    Fragen bitte hier im Forum stellen. So hat jeder etwas davon.

  • Warum nicht? Ich find Screen auch grossartig, und lasse alle wichtigen Dienste in eigenen Screens starten.


    Bei dem Startscript hast du recht. Wenn der openvpn client einen eigenen deamon mitbringt, muss man das rad nicht neu erfinden.

    Der Unterschied zwischen Genie und Wahnsinn definiert sich im Erfolg.

  • @DerImperator


    Super! Habe es gerade ausprobiert und das ist natürlich viel die bessere Lösung! Werde es so bald wie möglich im Tut editieren. EDIT: getan
    Immer toll wenn man etwas dazulernt!
    Screen ist jetzt natürlich auch nicht mehr nötig.

    Edited once, last by tschoesi ().

  • Hi!
    Schönes Tutorial, nur habe ich leider ein Problem.
    Hab alles soweit installiert und openvpn startet auch... jedoch jedesmal wenn openvpn startet bzw. läuft disconnectet es mir die wlan Verbindung. Kann mir da jemand vll weiterhelfen ?
    So lange openvpn läuft, kann ich zwar das wlan wieder connecten aber ich habe trotzdem keinen Zugriff auf das Internet.
    Falls ich irgendwas falsch gemacht hab, bitte nicht böse sein, bin neu hier.


    Vielen Dank im Vorraus

  • "Disconnected" im sinne von wlan0 wird getrennt? Das kann ich mir eigentlich nicht vorstellen.


    Wenn Du Dich mit dem vpn verbindest, bekommst Du aber natürlich eine IP aus dem VPN-IP-Bereich. Wie Du von dort wieder ins Internet rauskommst, liegt an den Routen bzw. am Masquerading. Ich nehme aus der Beschreibung "keinen Zugriff aufs Internet" an, dass genau das Dein problem ist uns Du Dich damit einfach noch gar nicht befasst hast.


    Schau Dir mal dieses Tutorial an, insbesondere Step 9 und Step 11 :
    http://jankarres.de/2013/05/ra…-vpn-server-installieren/

    Edited once, last by DCSH ().

  • Kann man eigentlich, wenn man openvpn benutzt, konkret sagen, nutze das nur für die und die Anwendung?


    Zum Beispiel deluge nur über openvpn, rest normal.

  • @DSHC
    Aber das Tutorial ist ja für einen Server, oder ?


    Ich will lediglich einen Client, also praktisch, einfach wie unter windows über meinen vpn Anbieter surfen können.


    Mit Routen habe ich mich noch nicht befasst, da ich eben dacht dass ich es als Client nicht brauche.

  • drpatipat


    Nach Deinen Postings hier ging ich davon aus, dass Du gemäß dieses Tutorials hier alles installiert hast, da geht es ja gerade um den Raspi als OpenVPN-Server. Vom Raspi als Client habe ich bislang nichts gelesen :)


    Auch in Deinem Doppelpost http://www.forum-raspberrypi.d…d-openvpn-client-und-wlan kann ich das so nicht rauslesen ("openvpn eingerichtet", als Client gibt es ja nichts direkt einzurichten)


    Poste doch bitte nochmal, was genau Du da machst... Du möchtest den Raspi als OpenVPN-Client nutzen und einen Drittanbieter-Server nutzen? Ist das ein kommerzieller Anbieter? Nutzt Du das schon von Windows aus und da geht es? Wie rufst Du vom Raspi aus openvpn auf? Was genau passiert mit wlan0 nach der Verbindung?


    P.S.: Doppelpost bitte löschen!

  • Hi zusammen,


    habe eine Synology DiskStation, auf der ein VPN Server läuft und wollte von meinem Raspberry Pi eine Verbindung mittels OpenVPN zum Server herstellen. Ich bin nach dem oben beschriebenen Tutorial vorgegangen, aber leider hat mich das etwas fehlgeleitet.
    Nur noch einmal zum Verständnis: Die Themenüberschrift "[Tutorial] OpenVPN Client einrichten" bedeutet, ich möchte den RaspberryPi mit einem bestehenden VPN Server verbinden und zwar in der Rolle eines Clients. Wenn ich das jedoch richtig verstanden habe, ist der openvpn daemon doch der VPN Server, oder? Denn nachdem ich alle Schritte des Tutorials durchgeackert hatte, hat mein Raspberry immernoch keine Verbindung zum Server aufgebaut. Ich hatte auch einmal den Parameter "auth-user-pass" weggelassen, so dass ich beim manuellen Start per "/etc/init.d/openvpn start" zur Username/Password-Eingabe aufgefordert wurde. Dabei war es auch egal, was ich eingegeben habe, der daemon wurde immer gestartet. Das hat mich etwas stutzig gemacht und ich bin dann doch endlich mal auf der offiziellen OpenVPN-Seite gelandet:
    http://openvpn.net/index.php/a…r-with-linux-clients.html


    Mein Vorgehen war dann Folgendes:
    1. OpenVPN config + Zertifikat über das Web-Interface der Synology DiskStation runterladen (openvpn.ovpn + ca.crt).
    2. In der Config die Adresse vom Server eintragen und den Pfad zum Zertifikat angepasst.
    3. Auf dem Raspberry: sudo apt-get install openvpn; sudo openvpn --config openvpn.ovpn


    Fertig, mehr musste ich nicht machen um eine VPN Verbindung aufzubauen. Dann fehlt nur noch die Sache, dass die Verbindung automatisch beim Hochfahren des Raspberries aufgebaut wird. Aber das sollte nicht mehr das Problem sein.


    Beste Grüße,
    Andi



  • hi folks,


    bin neu hier und hab gleich genau das gefunden was ich suche, ich habe dieses tut genau nach anleitung installiert, funzt auch wunderbar.. bis auf den autostart..was mach ich falsch?


    ich habe als grund os auf meinem pi rasbmc. logg ich mich jetzt über die console ein und starte den vpn dienst manuell [font="Monaco, Consolas, Courier, monospace"]sudo /etc/init.d/openvpn start -> funktioniert der auch und der pi ist über vpn im netz, aber ich dachet das geht auch generell wenn ich den pi starte und daß er sich gleich automatisch über vpn connected


    ich habe in etc/default/ die openvpn editiert AUTOSTART="VPN" <<< mit dem richtigen namen, wenn ich den falschen drin habe, kann ich ja nicht mal mehr den service manuell starten ...
    was mach ich falsch?


    schon mal big thx 4 feedback


    greetz cok3[/font]

    Edited once, last by Cok3 ().

  • Eigentlich wird die Angabe AUTOSTART in /etc/default/openvpn nur benötigt, wenn Du die Verbindungen manuell oder gar nicht automatisch starten lassen willst, da andernfalls init.d meines Wissens nach automatisch alle .conf-Files abarbeitet.


    Code
    1. # Start only these VPNs automatically via init script.
    2. # Allowed values are "all", "none" or space separated list of
    3. # names of the VPNs. If empty, "all" is assumed.


    Kommentier's also mal aus und schau, was passiert.

  • ach so :D


    ok also einfach nen # davor und dann nochmal gucken ob der pi beim neustart dann den vpn modus automatisch startet
    thx ..bin gerade auf arbeit, teste das heute abend


    greetz cok3


    update :(


    ich habe den autostart deaktiviert -> script wurde beim neustart leider nicht mit aktiviert und selbst der manuelle befehl über die console war nicht mehr möglich.
    hab dann im script einfach mal autostart "all" eingegeben... leider auch kein autostart, aber das script war wieder über die console manuell startbar ..


    hmm ...:daumendreh2:


    also ich such immer noch nach möglichkeiten, das beim raspberry start, sprich wenn xbmc hochfährt, automatisch im hintergrund open vpn mitgestartet wird :helpnew:


    big thx im voraus :danke_ATDE:


    greetz

    Edited once, last by Cok3 ().

  • Was wäre denn mit einem Eintrag in die rc.local?

    Code
    1. nano /etc/rc.local


    und dort vor dem exit 0
    deinen startbfehel (ohne sudo) eintragen

    Code
    1. /etc/init.d/openvpn start


    Speichern, neustarten, testen

    Der Unterschied zwischen Genie und Wahnsinn definiert sich im Erfolg.

  • So weit so gut der VPN Client startet auch mit ok. Allerdings, wenn ich über curl ifconfig.me meine externe IP aufrufen möchte, erscheint meine deutsche von meinem Anbieter.


    Also irgendwas ist faul... Ich bin wie gesagt so vorgegangen genauso wie in der Anleitung oben.


    1. sudo apt-get install openvpn
    2. die ovpn und crt Datei vom VPN Anbieter heruntergeladen.
    3. Dateien verschoben nach /etc/openvpn
    4. sudo nano /etc/openvpn/VPN.conf
    5. Inhalt der ovpn vom Anbieter eingefügt
    6. sudo nano /etc/openvpn/Zert.crt
    7. die kryptische Kombination aus Zahlen und Buchstaben copy paste. (auch mit Begin Certificate End certificate)
    8. sudo nano /etc/openvpn/auth.txt
    9. hier scheint es ein Fehler zu geben : Hier weiß ich nicht wie ich meinem Benutzernamen und Passwort reinschreiben soll.
    kommt da schlicht nur Username (also meiner rein) und eine Zeile darunter mein Passwort?
    Problem nämlich, wenn ich einfach mal einen Buchstaben vom Benutzernamen weglasse, so kann ich trotzdem den Client starten mit [ok]???
    10. Jeweils die Pfade abgeändert.



    client
    dev tun
    auth-user-pass [Pfad zu der Datei mit den Login-Daten]
    proto udp
    remote [IP Zensiert]
    resolv-retry infinite
    nobind
    persist-key
    persist-tun
    comp-lzo
    ca [Pfad zu der .crt Datei]
    verb 3



    Auch ein Autostart wird mit folgenden Hinweis im Bootscreen des Rasp mit einem Error quittiert.


    /dev/input/event*


    Mal eine blöde Frage muss ich eigentlich den OpenVPN Server auch noch einrichten und dann erst den Client?




    Danke für eure Hilfe!

    Edited once, last by daslicht ().

  • Dürfte soweit alles i.O. sein jedoch liegt das Problem an einem kleinen Bug vermute ich.
    Versuche das hier mal:


    Editiere die Datei /etc/default/ifplugd


    ändere mal den Eintrag
    HOTPLUG_INTERFACES="all"
    in
    HOTPLUG_INTERFACES="eth0 wlan0"


    reboot und alles sollte laufen, wie es eigentlich sollte!


    Grüße