Erstellen Sie eine Public-Key-Infrastruktur mit Hilfe der easy-rsa Scripts

Der erste Schritt bei der Einrichtung OpenVPN ist eine zu erstellen Public Key Infrastructure (PKI). Die PKI besteht aus:

  • Ein öffentlicher Master Zertifizierungsstelle (CA) Zertifikat und einen privaten Schlüssel.
  • Eine separate öffentliche Zertifikat und einen privaten Schlüssel (im Folgenden als Zertifikat bezeichnet) für jeden Server und jeder Client.

Um das Zertifikat Erstellungsprozess erleichtern, OpenVPN kommt mit einer Sammlung von RSA Schlüssel manangement Skripte (basierend auf der OpenSSL-Kommandozeilen-Tool) bekannt als easy-rsa.

Hinweis: Nur .key-Dateien müssen geheim gehalten werden, .CRT- und .csr-Dateien können über unsichere Kanäle wie Text-E-Mail gesendet werden.

In diesem Artikel werden die benötigten Zertifikate werden von Wurzel im Stammverzeichnis des erstellt. Dadurch wird sichergestellt, dass die erzeugten Dateien den richtigen Eigentümer und Berechtigungen haben, und sind sicher von anderen Benutzern.

Hinweis: Die Zertifikate können auf jeder Maschine erstellt werden. Für die höchste Sicherheit, die Zertifikate auf einem physisch sicheren Maschine erzeugen aus jedem Netz getrennt, und stellen Sie sicher, dass die erzeugte ca.key privaten Schlüssel gesichert und nie für jedermann zugänglich.
Warnung: Stellen Sie sicher, dass die erzeugten Dateien gesichert werden, vor allem die ca.key und ca.crt Dateien, wenn sie verloren gehen, da werden Sie nicht in der Lage, jede neue zu schaffen, noch widerrufen alle kompromittiert Zertifikate, so erfordert die Erzeugung eines neuen Zertifizierungsstelle (CA) Zertifikat, entkräften die gesamte PKI-Infrastruktur.

Installieren der easy-rsa-Skripten

Installieren Sie die Skripte durch folgende Maßnahmen:

Zertifikate erstellen

Wechseln Sie in das Verzeichnis, in dem Sie die Skripte installiert.

Um die konsequente Nutzung der Werte zu gewährleisten, wenn die PKI-Generierung, Satz Standardwerte durch die PKI-Erzeugungs Skripte verwendet werden. Bearbeiten / root / easy-rsa / VARs und auf ein Minimum KEY_COUNTRY gesetzt, KEY_PROVINCE, KEY_CITY, KEY_ORG, und KEY_EMAIL Parameter (nicht jeder dieser Parameter leer lassen). Ändern Sie den KEY_SIZE Parameter 2048 für die SSL / TLS 2048bit RSA-Schlüssel für die Authentifizierung verwenden.

Exportieren Sie die Umgebungsvariablen.

Löschen Sie alle zuvor erstellten Zertifikate.

Hinweis: Die Eingabe eines . (Punkt) wenn für einen Wert aufgefordert, ausblendet den Parameter.

Der Build-Skript CA erzeugt das Zertifizierungsstelle (CA) Zertifikat.

Der Build-Schlüssel-Server-Skript # ./build-key-server <server name> erzeugt ein Serverzertifikat. Stellen Sie sicher, dass Sie den Servernamen (Common Name beim Ausführen des Skripts) ist einzigartig.

Hinweis: Verwenden Sie keine Herausforderung Passwort oder Firmennamen eingeben, wenn das Skript Sie eine Eingabeaufforderungen.

Der Build-Skript erzeugt die AVW Diffie-Hellman-Parameter .pem-Datei vom Server benötigt.

Hinweis: Es wäre besser, ein neues für jeden Server zu erzeugen, Sie können jedoch die gleiche, wenn Sie möchten,.

Der Build-key-Skript # ./build-key <client name> erzeugt ein Client-Zertifikat. Stellen Sie sicher, dass die Client-Namen (Common Name beim Ausführen des Skripts) ist einzigartig.

Hinweis: Verwenden Sie keine Herausforderung Passwort oder Firmennamen eingeben, wenn das Skript Sie eine Eingabeaufforderungen.

Generieren Sie ein Geheimnis Hash-basierte Message Authentication Code (HMAC) durch laufen: # openvpn --genkey --secret /root/easy-rsa/keys/ta.key

Dies wird verwendet, um eine zusätzliche HMAC-Signatur für alle SSL / TLS Handshake-Pakete hinzufügen. Darüber hinaus wird sofort gelöscht werden, jede UDP-Paket nicht die richtige HMAC-Signatur mit, Schutz vor:

  • Portscanning.
  • DoS-Angriffe auf dem OpenVPN UDP-Port.
  • SSL / TLS-Handshake Einweihungen von nicht autorisierten Maschinen.
  • Eventuelle Pufferüberlauf-Schwachstellen in der SSL / TLS-Implementierung.

Alle erstellten Schlüssel und Zertifikate in / root / easy-rsa / Schlüssel gespeichert. Wenn Sie einen Fehler machen,, Sie können wieder durch Ausführen des Rein alle Skript neu anfangen.

Warnung: Dadurch werden alle zuvor generierten Zertifikate in / root / easy-rsa / Schlüssel gespeichert löschen, einschließlich der Zertifizierungsstelle (CA) Zertifikat.

Konvertieren von Zertifikaten verschlüsselt P12-Format

Einige Software (wie Android) nur VPN-Zertifikate zu lesen, die in einem Passwort-verschlüsselten P12-Datei gespeichert werden. Diese können mit dem folgenden Befehl generiert werden:

Überprüfen OpenSSL

Wenn Sie benötigen die Informationen innerhalb eines Zertifikats zu überprüfen, CSR oder Private Key, Verwenden Sie diese Befehle. Du kannst auch überprüfen CSRs und prüfen Sie die Zertifikate mit unserem Online-Tools.

  • Prüfen Sie den Certificate Signing Request (CSR)
  • Überprüfen Sie einen privaten Schlüssel
  • Prüfen Sie ein Zertifikat
  • Überprüfen Sie eine PKCS # 12-Datei (.pfx oder P12)

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.