Kostenlose VPN-Lösung
Workshop - Sichere Einwahlverbindungen mit OpenVPN auf einem Windows-Server
Schlüssel für die Clients erzeugen
Als dritten Schritt erschaffen Sie den Schlüssel für die Clients. Dazu dient der Befehl build-key client. Je nach Anzahl der Clients können Sie diese Prozedur beliebig oft wiederholen. Der Parameter client muss logischerweise variieren. Das gilt auch für die Eingabe des Common Name. Wollen Sie passwortgeschützte Schlüssel erzeugen, rät die offizielle Dokumentation zur Verwendung des Scripts build-key-pass client. Unter Linux existiert dieses Script, in der Windows-Installation allerdings nicht. Wollen Sie das nutzen, müsse Sie die Datei build-key-pass.bat selbst erstellen. Mit folgenden Zeilen gelingt der Trick:
@echo off
cd %HOME%
rem Zertifikat erzeugen, das zehn Jahr gültig ist
openssl req -days 3650 -new -keyout %KEY_DIR%\%1.key -out %KEY_DIR%\%1.csr -config %KEY_CONFIG%
rem Zertifikat signieren
openssl ca -days 3650 -out %KEY_DIR%\%1.crt -in %KEY_DIR%\%1.csr -config %KEY_CONFIG%
del /q %KEY_DIR%\*.old
Abschließend erzeugen Sie noch die Diffie-Hellman-Parameter via build-dh. Dies kann je nach Hardware einige Zeit in Anspruch nehmen. Nachfolgend eine Übersicht, der in diesem Kapitel erzeugten Schlüssel und deren Bedeutung.
Dateiname |
Verwendet von |
Verwendungszweck |
Geheim? |
ca.crt |
Server + allen Clients |
Root-CA-Zertifikat |
Nein |
ca.key |
Schlüssel-signierender Rechner |
Root-CA-Schlüssel |
Ja |
dh<Zahl>.pem |
Nur Server |
Diffie-Hellman-Parameter |
Nein |
server.crt |
Nur Server |
Server-Zertifikat |
Nein |
server.key |
Nur Server |
Server-Schlüssel |
Ja |
client.crt |
Nur Client |
Client-Zertifikat |
Nein |
client.key |
Nur Client |
Client-Schlüssel |
Ja |