OpenVPN Zertifikaterstellung für Clients

    • Offizieller Beitrag

    Heute mal ein Kurzbericht on "HowTo create certificates for OpoenVPN clients". Ich habe das vor ca. 2 Jahren schon schon einmal gemacht sollte also kein BigDeal sein. Vorrausetzung:
    - OpenVPN Server ist eingerichtet
    - OpenVPN Server ist richtig konfiguriert und man kennt die Konfigurationsparamter
    - OpenVPN Clients sind schon erfolgreich getestet worden

    • Man gehe nach C:\Program Files\OpenVPN\easy-rsa
    • Initialisiere die Umgebung mit dem Aufruf von vars.bat
    • Starte build-key.bat <client name>
    • Gebe alle zu ändernden Parameter ein
    • Das neue Zertifikat liegt unter C:\Program Files\OpenVPN\easy-rsa\keys

    ca.crt, <client name>.crt und <client name>.key auf den <client name> rechner und ...openvpn\config kopieren (Annahme OpenVPN ist dort schon installiert. Eine client config erstellen (alte wiederverwenden und crt namen anpassen).
    OpenVPN Gui starten und connect aufrufen -> Verbindung sollte erstellt werden.

    • Offizieller Beitrag

    Heute auf Open VPN 2.4 aktualisiert dabei dann auch gleich mal die Einstellung und die Zertifikatsverwaltung (XCA statt easy-rsa) angepasst.

    Sehr hilfreich waren hierzu die Videos und die templates von

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Probleme:

    1. iOS unterstützt das p12 formate nicht - d.h. für iOS Client muss man die Zertifikate mit openssl in drei einzelne "zerlegen"
    2. der TAP driver 9.21.2 funktioniert unter Windows 2008 R2 Server immer noch nicht - musst auf den 9.9.2 zurück (Symptom: Verbindung wird aufgebaut, aber es kommt kein Datentransfer zustande)

    Wichtige Änderungen in der Konfiguration, die ich leichtsinnigerweise bisher nicht drin hatte

    • TLS-AUTH <key> 1|0
    • tls-version-min 1.2
    • cipher auf AES-256-CBC umgestellt
    • auth auf SHA512 gesetzt
    • remote-cert-tls server|client eingeführt
    • verify-x509-name <servername> name wird nun genutzt

    genutzt wird das OpenVPN vom iPad2 / iPadAir2, iPhone7 und mehreren Windows 10 und Windows 7 clients hauptsächlicher Einsatzbereich für lokale Mails und Hausautomatisierung, bzw. bei dauerhaft entfernten Rechnern "synch" mit der Windowsdomäne.

    • Offizieller Beitrag

    Mittlerweile bin ich auf IPFire statt Wingate umgestiegen. Ich nutze dort auch OpenVPN welches sehr einfach über ein WebGui zu andmistrieren ist.

    Das Problem mit p12 Zertifikaten und iOS besteht nat. weiterhin, d.h. man muss mit openssl das Zertifikat zerlegen.

    Hier mal im Detail ein mögliches Skript OLAFSIPHONE7.p12 ist der cert Name welcher von IPFire generiert wurde (liegt unter ipfire im Verzeichnis /var/ipfire/ovpn/certs). Erzeugt Euch am besten einen Ordner auf IPFire und legt dort das script als convert12.sh und die p12 Dateien ab. Passt den CERTNAME an und lasst das Skript laufen. Beim Import das pwd von IPFIre verwenden am Ende dann Euer finales pwd für iOS eingeben. In OpenVPN für IOS könnt ihr dann beim Startwählen ob es gespeichert werden soll also keine Angst Ihr braucht es nicht mehr bei jeder Verbinsungsaufnahme eintippen (darf nein sollte deshalb komplexer sein).

    und die Änderungen im opvpn file damit nicht mehr das p12 sondern die drei einzelnen certs benutzt werden:

    Code
    #pkcs12 OLAFSIPHONE7.p12
    ca OLAFSIPHONE7_ca.pem
    cert OLAFSIPHONE7_user.pem
    key OLAFSIPHONE7_keys_pass.pem

    so sieht es dann in IPFire nach eine erfolgreichen Verbindungsaufnahme aus:

    Ach ja: übertragen der Dateien von IPFire auf einen FTP Server geht einfach via ncftp (mit pakfire installieren). Ein FTP Server muss natürlich bei Euch im Netz vorhanden sein.

    Bsp: ncftp -u <user>-p <password> <euere_ftp_serverip>

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!