Selbstsignierte OpenVPN-CA erneuern - Key vorhanden, aber kein Clientzugriff
Hallo liebe Community,
ich stehe vor einer Herausforderung im Zusammenhang mit meinem selbstsignierten OpenVPN-CA, das leider abgelaufen ist. Ich habe den privaten Schlüssel (Key) für das CA, und auf das System wo das CA.cert ursprünglich erstellt wurde. Gibt es eine Möglichkeit, das CA zu erneuern, ohne auf die Clients zugreifen zu müssen?
Ich habe bereits einige Recherchen durchgeführt, aber bisher keine konkrete Lösung gefunden. Da das CA abgelaufen ist, können sich die Clients nicht mehr erfolgreich mit dem VPN-Server verbinden, da das Zertifikat nicht mehr gültig ist.
Ich habe versucht, das Problem zu lösen, indem ich die folgenden beiden Ansätze verfolgt habe:
1. Erstellung eines neuen caNew.crt mit dem alten Schlüssel caOld.key.
shell
2. Erstellung einer neuen Server CSR (Certificate Signing Request).
Die Moduluswerte der alten und neuen Zertifikate sind gleich, was mir zunächst Hoffnung gab. Ich habe dann die alten Zertifikate in der OpenVPN-Serverkonfigurationsdatei (server.conf) durch die neuen Dateien ersetzt und den Server neu gestartet.
Leider erhielt ich jedoch folgende Fehlermeldung im Server-Log:
Ist mein Ansatz grundsätzlich möglich? Wenn ja, was könnte hier schiefgegangen sein? Falls jemand von euch Erfahrung mit der Erneuerung eines selbstsignierten OpenVPN-CAs hat oder Ideen dazu hat, wie man dieses Problem lösen könnte, wäre ich sehr dankbar für eure Hilfe und Ratschläge.
Vielen Dank im Voraus!
ich stehe vor einer Herausforderung im Zusammenhang mit meinem selbstsignierten OpenVPN-CA, das leider abgelaufen ist. Ich habe den privaten Schlüssel (Key) für das CA, und auf das System wo das CA.cert ursprünglich erstellt wurde. Gibt es eine Möglichkeit, das CA zu erneuern, ohne auf die Clients zugreifen zu müssen?
Ich habe bereits einige Recherchen durchgeführt, aber bisher keine konkrete Lösung gefunden. Da das CA abgelaufen ist, können sich die Clients nicht mehr erfolgreich mit dem VPN-Server verbinden, da das Zertifikat nicht mehr gültig ist.
Ich habe versucht, das Problem zu lösen, indem ich die folgenden beiden Ansätze verfolgt habe:
1. Erstellung eines neuen caNew.crt mit dem alten Schlüssel caOld.key.
shell
openssl x509 -in caOld.crt -days 36500 -out caNew.crt -signkey caOld.key
openssl verify -CAfile caNew.crt client01.crt
test.crt: OK
2. Erstellung einer neuen Server CSR (Certificate Signing Request).
openssl req -new -key server_old.key -out serverNew.csr
openssl x509 -req -in serverNew.csr -CA ca_new.crt -CAkey ca.key -CAcreateserial -out serverNew.crt -days 500 -sha256
Die Moduluswerte der alten und neuen Zertifikate sind gleich, was mir zunächst Hoffnung gab. Ich habe dann die alten Zertifikate in der OpenVPN-Serverkonfigurationsdatei (server.conf) durch die neuen Dateien ersetzt und den Server neu gestartet.
Leider erhielt ich jedoch folgende Fehlermeldung im Server-Log:
Mittwoch, 6. September 2023 IP.IP.IP.IP:47713 TLS-Fehler: Die TLS-Schlüsselverhandlung konnte nicht innerhalb von 60 Sekunden erfolgen (überprüfen Sie Ihre Netzwerkverbindung)
Mittwoch, 6. September 2023 IP.IP.IP.IP:47713 TLS-Fehler: Der TLS-Handshake ist fehlgeschlagen
Ist mein Ansatz grundsätzlich möglich? Wenn ja, was könnte hier schiefgegangen sein? Falls jemand von euch Erfahrung mit der Erneuerung eines selbstsignierten OpenVPN-CAs hat oder Ideen dazu hat, wie man dieses Problem lösen könnte, wäre ich sehr dankbar für eure Hilfe und Ratschläge.
Vielen Dank im Voraus!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 33690881480
Url: https://administrator.de/contentid/33690881480
Ausgedruckt am: 22.11.2024 um 17:11 Uhr
3 Kommentare
Neuester Kommentar
Ohne Austausch zumindest des CA-Certs am Client wird das nichts. Da die CA aber eh abgelaufen ist wirst du ja für die Zukunft eh neue Client-Zertifikate signieren müssen. Client-Zertifikate auszustellen die länger als die der CA laufen ist eh eine schlechte Idee.
Also zukünftig vorher etwas mehr Gedanken über die CA-Struktur machen. Das ist nichts was man mal so nebenbei plant. Da gehört sorgfältige Planung dazu sonst konterkariert das die Nutzung und Sicherheit die man sich davon erhofft.
Gruß sid
Also zukünftig vorher etwas mehr Gedanken über die CA-Struktur machen. Das ist nichts was man mal so nebenbei plant. Da gehört sorgfältige Planung dazu sonst konterkariert das die Nutzung und Sicherheit die man sich davon erhofft.
Gruß sid
Hallo,
Nachtrag: Zertifikate sind genau für solche Situationen da. Zertifikate und die zugrundeliegende Infrastruktur (PKI) sind so designed, dass der Zertifikatinhaber nachweisen kann, dass er:
Damit kann sichergestellt werden, dass nur Zertifikatinhaber auf eine Ressource zugreifen können, für die sie zum Zugriffszeitpunkt auch berechtigt sind.
Nachtrag 2: Das ist jetzt der richtige Zeitpunkt, um Dir eine Liste zu erstellen, in der alle Zertifikate mit Ablaufdatum stehen. Diese Liste schaut man dann immer mal durch und sorgt dafür, dass keins abläuft ohne zuvor ersetzt worden zu sein.
Grüße
lcer
Nachtrag: Zertifikate sind genau für solche Situationen da. Zertifikate und die zugrundeliegende Infrastruktur (PKI) sind so designed, dass der Zertifikatinhaber nachweisen kann, dass er:
- im Besitz eines echten Zertifikates ist (deshalb muss das Zertifizierungsstellenzertifikat vorliegen und diesem vertraut werden)
- das Zertifikat gültig ist (Beginn, Ende - steht im Zertifikat - daher immer die Systemzeit der beteiligten Server überprüfen, am besten eine gemeinsame NTP-Quelle nutzen.)
- das Zertifikat nicht widerrufen wurde (eine Zertifikatssperrliste oder ein OCSP-Server sollte verfügbar und erreichbar sein. Wobei dieser Punkt in der Praxis für VPN-Verbindungen häufig weggelassen wird.)
Damit kann sichergestellt werden, dass nur Zertifikatinhaber auf eine Ressource zugreifen können, für die sie zum Zugriffszeitpunkt auch berechtigt sind.
Nachtrag 2: Das ist jetzt der richtige Zeitpunkt, um Dir eine Liste zu erstellen, in der alle Zertifikate mit Ablaufdatum stehen. Diese Liste schaut man dann immer mal durch und sorgt dafür, dass keins abläuft ohne zuvor ersetzt worden zu sein.
Grüße
lcer