flicflac2025

OpenVPN - neue Zertifikate

Hallo
Ich habe vor 10 Jahren einen openvpn Server und einen Client-Zugriff installiert, V2.3.6. Der openvpn-Server läuft auf einem Windows-Server 2019. Nach 10 Jahren sind die Zertifikate abgelaufen.

Ich habe neue Zertifikate erstellt mit Easyrsa 3.0.4. Das generieren war problemlos, aber nach dem Ersetzen der Zertifikate auf Server und Client erhalte ich beim Verbindungsaufbau den Fehler:
VERIFY nsCertType ERROR: CN=Name, require nsCertType=SERVER
Der Versuch mit der damals verwendeten Version von Easyrsa (aus 2014) bringt beim generieren des Client-Key die Fehlermeldung:
Warning: Ignoring -days without -x509; not generating a certificate
Can't load C:\Program Files\OpenVPN\easy-rsa/.rnd into RNG
5C420000:error:12000079:random number generator:RAND_load_file:Cannot open file:crypto\rand\randfile.c:107:Filename=C:\Program Files\OpenVPN\easy-rsa/.rnd
Es wird kein Zertifikat *.crt für den Client erstellt.
Ich suche für beide Möglichkeiten dringend eine Lösung.
Danke
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 673469

Url: https://administrator.de/forum/openvpn-zertifikate-server-client-673469.html

Ausgedruckt am: 19.06.2025 um 21:06 Uhr

Xaero1982
Xaero1982 19.06.2025 um 19:56:21 Uhr
Goto Top
Moin,

ChatGPT sagt:

Danke für die ausführliche Beschreibung – das Problem ist ein Klassiker bei älteren OpenVPN-Versionen in Kombination mit modernen EasyRSA-Zertifikaten.

---

## 🔍 Problem 1: `VERIFY nsCertType ERROR: CN=Name, require nsCertType=SERVER`

Dieser Fehler tritt auf, weil:

* **OpenVPN v2.3.6** erwartet noch ein **`nsCertType=server`**-Attribut im Server-Zertifikat.
* **EasyRSA 3.x** generiert dieses Feld **standardmäßig nicht mehr** – es ist veraltet, wurde aber in neueren OpenVPN-Versionen durch `extendedKeyUsage=serverAuth` ersetzt.

---

### ✅ **Lösung für EasyRSA 3.x (modern):**

Damit OpenVPN 2.3.6 das Zertifikat akzeptiert, musst du beim Erstellen des Server-Zertifikats dieses Flag setzen:

```bash
easyrsa --subject-alt-name="..." build-server-full server1 nopass  
```

Und vorher in der Datei `x509-types/server` (in deinem EasyRSA-Verzeichnis) folgendes hinzufügen:

```text
# EasyRSA x509-type: server

basicConstraints = CA:FALSE
nsCertType = server
keyUsage = digitalSignature, keyEncipherment
extendedKeyUsage = serverAuth
```

> Wichtig: `nsCertType = server` muss explizit rein, **damit v2.3.6** das akzeptiert.

---

### Alternative: Upgrade auf OpenVPN ≥2.4.x

* OpenVPN ab Version 2.4 akzeptiert `extendedKeyUsage` und benötigt `nsCertType` nicht mehr.
* Empfehlung: Update durchführen, wenn möglich – auch aus Sicherheitsgründen.

---

## 🔍 Problem 2: Fehler mit `.rnd` in EasyRSA 2.x (2014)

Der Fehler:

```
Can't load ...easy-rsa/.rnd into RNG  
RAND_load_file:Cannot open file
```

### ✅ Lösung:

Die `.rnd`-Datei wird vom alten `openssl.exe` erwartet, existiert aber nicht. Erstelle sie manuell:

#### Variante 1 – über PowerShell:

```powershell
cd "C:\Program Files\OpenVPN\easy-rsa"  
[System.IO.File]::WriteAllBytes(".rnd", (1..1024 | ForEach-Object {Get-Random -Maximum 256}))  
```

#### Variante 2 – mit OpenSSL direkt:

```cmd
openssl rand -out .rnd -hex 1024
```

Dann kannst du erneut versuchen:

```cmd
build-key client1
```

> Achtung: `build-key` braucht `-x509` und `-days` korrekt kombiniert – ggf. via `build-key`-Script aufrufen, **nicht direkt mit openssl**.

---

## 🔄 Empfehlung (sicher und nachhaltig):

1. **OpenVPN auf v2.4.x oder 2.5.x** updaten.
2. **EasyRSA 3.0.4 beibehalten**.
3. `nsCertType = server` temporär ins `x509-types/server` für den Übergang aufnehmen.
4. Auf längere Sicht: **NSCertType endgültig auslaufen lassen** – modernere Clients/Server benötigen das nicht mehr.

---

Wenn du willst, kann ich dir die passende `vars`-Datei, ein aktualisiertes `x509-types/server`-Profil oder ein genaues Schritt-für-Schritt-Skript liefern – sag einfach, welchen Weg du gehen willst (alt beibehalten oder auf neue Versionen migrieren).
flicflac2025
flicflac2025 19.06.2025 um 20:19:31 Uhr
Goto Top
@xaero1891

Danke für die Info. Könnte zum Ziel führen. Unklar ist mir noch
`bash
easyrsa --subject-alt-name="..." build-server-full server1 nopass
`
Genauer gasagt ="..." Einfach nur drei Punke oder gehört da was hin?

Sorry, ich habe jetzt 7 Stunden dran gehangen und bin etwas "weich" in der Birne.
Pjordorf
Pjordorf 19.06.2025 um 20:24:23 Uhr
Goto Top
Hallo,

Zitat von @flicflac2025:
Ich habe vor 10 Jahren einen openvpn Server
Also im Jahr 2015

Der openvpn-Server läuft auf einem Windows-Server 2019.
Im Jahr 2015 hattest du schon MS Server 2019?

Nach 10 Jahren sind die Zertifikate abgelaufen.
Erst? Als Datenspeicher nutzt du noch Tonrollen?

Ich suche für beide Möglichkeiten dringend eine Lösung.
Fehlermeldungen Lesen, und Verstehen. Notfalls hilft dir heutzutage eine Suchmaschine deines Vertrauens.

Der Versuch mit der damals verwendeten Version von Easyrsa (aus 2014) bringt beim generieren des Client-Key die Fehlermeldung:
Manchmal (oft) ändern sich dinge nach (langen) Zeiten. Und 10 Jahre in der IT (wo die IT ca. erst 40 Jahre aufm Buckel hat) ist da schon wie mit 5 Milliarden Jahre im Universum. face-smile

Gruss,
Peter
aqui
aqui 19.06.2025 aktualisiert um 20:44:49 Uhr
Goto Top
ChatGPT sagt:
Dann sollte man es auch entsprechend der Regeln kennzeichnen... face-sad
Sind KI-Inhalte auf dieser Website erlaubt?
Zeigt übrigens auch Googles KI an wenn man danach sucht...

@flicflac2025
Das hiesige OpenVPN Tutorial hast du gelesen und deine alten Konfig Dateien entsprechend etwas "moderner" angepasst?!
Merkzettel: VPN Installation mit OpenVPN
Ein anonymisiertes Posting deiner (vermutlich) veralteten Konfig Dateien hätte ein zielführendes Troubleshooting vereinfacht. face-sad

Nebenbei: Vielleich auch mal drüber nachdenken das etwas angestaubte und wenig performante OpenVPN jetzt gegen etwas Neues und Skalierbareres zu tauschen?! 😉
Gibt ja genug Alternativen:
Merkzettel: VPN Installation mit Wireguard
IPsec IKEv2 VPN für mobile Benutzer auf der pfSense oder OPNsense Firewall einrichten
IKEv2 VPN Server für Windows und Apple Clients mit Raspberry Pi
PfSense VPN mit L2TP (IPsec) Protokoll für mobile Nutzer
L2TP VPN Server mit preiswerten Mikrotik Routern
Usw. usw.
UnbekannterNR1
UnbekannterNR1 19.06.2025 um 20:36:46 Uhr
Goto Top
Hast Du in Deiner Client Config die Line
verify-x509-name "xxxx"  name  


Wenn ja anpassen auf neuen Namen, oder rausnehmen.
flicflac2025
flicflac2025 19.06.2025 um 21:25:16 Uhr
Goto Top
@peter
Im Jahr 2015 hattest du schon MS Server 2019?>
Lief erst auf Win10 Pro und wurde dann auf den MSS2019 kopiert.
Erst? Als Datenspeicher nutzt du noch Tonrollen?>
3650 Tage war damals Standard. Und wenn es läuft...
Ich habe hier 3650 Sklaven welche es in Tontafeln ritzen.
Fehlermeldungen Lesen, und Verstehen. Notfalls hilft dir heutzutage eine Suchmaschine deines Vertrauens.>
In den Suchmaschinen meines Vertrauens findet man oft genau solch helfende und aussagekräftige Hinweise.

@aqui
Bei den Konfig-Dateien gebe ich dir recht, einfach ein Ruf der Verzweiflung.

@all
Der VPN Server soll zeitnah vom MS-Server verschwinden und von einem Router übernommen werden. Angedacht ist DrayTek Vigor2927. Für alternative Vorschläge bin ich offen, sollte aber openvpn unterstützen und 50 (25) gleichzeitige VPN-Verbindungen unterstützen, unter der 3000 EUR Klasse face-smile.
Im Moment muss ich das VPN schnellstens wieder zum Laufen bringen. Bei der Einrichtung vor 10 Jahren hatte ich eine super Anleitung mit guter Erläuterung. Leider verschwunden face-sad
Danke erstmal für eure Unterstützung.

Schönen Abend noch
Gruß flic
commodity
commodity 19.06.2025 aktualisiert um 23:24:08 Uhr
Goto Top
Ich würde ja nicht im Leben auf die Idee kommen, einen OpenVPN-Server unter Windows zu betreiben.
Vielleicht aber hilft Dir das ein Stück weiter:

https://www.internet-xs.de/kb/openvpn-allgemein/openvpn-zertifikate-erst ...

Diese Anleitung ist für Linux, sieht vielleicht etwas komisch aus, ist aber perfekt:
https://ctaas.de/OpenVPN_Server_Ubuntu_howto.htm

Vielleicht kannst Du aus den Erklärungen ein paar Hinweise saugen.

Ich finde es unnötig, OpenVPN auf einen Router zu packen, zumal gerade OpenVPN vergleichsweise Ressourcenhungrig ist (siehe auch den Hinweis des Kollegen @aqui). Schon ein Raspberry Pi hat oft mehr Leistung als der Router und jeder andere Mini-PC tut es noch besser. Den stellt man als VPN-Gateway in ein eigenes Netz und erlaubt von dort aus die Zugriffe ins Produktivnetz. Wenn es der Router sein soll, nimm eine OPNsense, kann man auch fertig kaufen, wenn man es nicht selbst aufspielen mag. Z.B. bei Thomas Krenn, da gibt's auch Beratung.

Viele Grüße, commodity