Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel hilft Ihnen, ein selbstsigniertes Stammzertifikat zu erstellen und PEM-Clientzertifikatdateien mit OpenSSL zu generieren. Wenn Sie stattdessen PFX- und CER-Dateien benötigen, lesen Sie die Anweisungen für Windows PowerShell.
Voraussetzungen
Um diesen Artikel verwenden zu können, müssen Sie über einen Computer verfügen, auf dem OpenSSL ausgeführt wird.
Selbstsigniertes Stammzertifikat
In diesem Abschnitt können Sie ein selbstsigniertes Stammzertifikat generieren. Nachdem Sie das Zertifikat generiert haben, exportieren Sie die öffentliche Schlüsseldatendatei des Stammzertifikats.
Im folgenden Beispiel können Sie das selbstsignierte Stammzertifikat generieren.
openssl genrsa -out caKey.pem 2048 openssl req -x509 -new -nodes -key caKey.pem -subj "/CN=VPN CA" -days 3650 -out caCert.pem
Drucken sie die selbstsignierten öffentlichen Stammzertifikatdaten im Base64-Format. Dies ist das Format, das von Azure unterstützt wird.
openssl x509 -in caCert.pem -outform der | base64 -w0 && echo
Clientzertifikate
Hinweis
Microsoft empfiehlt, immer den sichersten Authentifizierungsflow zu verwenden. Der in diesem Verfahren beschriebene Authentifizierungsfluss erfordert ein sehr hohes Maß an Vertrauen in die Anwendung und birgt Risiken, die in anderen Flows nicht vorhanden sind. Sie sollten diesen Flow nur verwenden, wenn andere sicherere Flows, z. B. verwaltete Identitäten, nicht praktikabel sind.
In diesem Abschnitt generieren Sie das Benutzerzertifikat (Clientzertifikat). Zertifikatdateien werden im lokalen Verzeichnis generiert, in dem Sie die Befehle ausführen. Sie können dasselbe Clientzertifikat auf jedem Clientcomputer verwenden oder Zertifikate generieren, die für jeden Client spezifisch sind. Es ist äußerst wichtig, dass das Clientzertifikat vom Stammzertifikat signiert ist.
Verwenden Sie die folgenden Beispiele, um ein Clientzertifikat zu generieren.
export PASSWORD="password" export USERNAME=$(hostnamectl --static) # Generate a private key openssl genrsa -out "${USERNAME}Key.pem" 2048 # Generate a CSR (Certificate Sign Request) openssl req -new -key "${USERNAME}Key.pem" -out "${USERNAME}Req.pem" -subj "/CN=${USERNAME}" # Sign the CSR using the CA certificate and CA key openssl x509 -req -days 365 -in "${USERNAME}Req.pem" -CA caCert.pem -CAkey caKey.pem -CAcreateserial -out "${USERNAME}Cert.pem" -extfile <(echo -e "subjectAltName=DNS:${USERNAME}\nextendedKeyUsage=clientAuth")
Verwenden Sie das folgende Beispiel, um das Clientzertifikat zu überprüfen.
openssl verify -CAfile caCert.pem caCert.pem "${USERNAME}Cert.pem"
Nächste Schritte
- Informationen zum Fortsetzen der VPN-Gateway-Konfigurationsschritte finden Sie unter Point-to-Site-Zertifikatauthentifizierung.