Dies ist eine Schritt-für-Schritt-Anleitung zum Konfigurieren eines Open VPN-Servers unter Windows Server 2008/2012-Betriebssystemen und zum Verbinden von Clients mit dem erstellten virtuellen privaten Netzwerk.
Open VPN ist eine offene Implementierung der VPN-Technologie – das Virtual Private Network, mit dem virtuelle private Netzwerke zwischen Gruppen geografisch entfernter Knoten über einem offenen Datenübertragungskanal (Internet) erstellt werden können. Open VPN eignet sich für Aufgaben wie die sichere Remote-Netzwerkverbindung zu einem Server, ohne den Internetzugang zu öffnen, als würden Sie eine Verbindung zu einem Host in Ihrem lokalen Netzwerk herstellen. Die Verbindungssicherheit wird durch offene SSL-Verschlüsselung erreicht.
Wie es funktioniert?
Wenn die Open VPN-Konfiguration abgeschlossen ist, kann der Server externe SSL-geschützte Netzwerkverbindungen zu dem virtuellen Netzwerkadapter akzeptieren, der zu Beginn des VPN-Dienstes (tun / tap) erstellt wurde, ohne die Datenverkehrsverarbeitungsregeln anderer Schnittstellen (externer Internetadapter usw.) zu beeinflussen.). Sie können die Clientfreigabe von Open VPN für einen bestimmten Netzwerkadapter von den auf dem Server vorhandenen konfigurieren. Im zweiten Teil der Anweisung wird dieses Tunneln des Internetverkehrs der Benutzer berücksichtigt. Bei dieser Weiterleitungsmethode übernimmt der Host, der VPN-Verbindungen verarbeitet, auch die Funktion eines Proxyservers (Proxy) – um die Regeln der Netzwerkaktivität von Benutzern zu vereinheitlichen und den Client-Internetverkehr in seinem eigenen Namen weiterzuleiten.
Open VPN auf dem Server installieren
Laden Sie die Version von Open VPN herunter und installieren Sie sie, die Ihrem Betriebssystem entspricht. Führen Sie das Installationsprogramm aus; stellen Sie sicher, dass im dritten Schritt des Installationsassistenten alle Funktionen für die Installation ausgewählt sind.
Bitte beachten Sie, dass in dieser Anleitung weitere Befehle davon ausgehen, dass Open VPN im Standardverzeichnis „C: \ Programme \ OpenVPN“ installiert ist.
Wir erlauben das Hinzufügen eines virtuellen Netzwerkadapters TIPPEN Sie auf die entsprechende Anforderung und warten Sie, bis die Installation abgeschlossen ist (dies kann einige Minuten dauern).
Schlüsselgenerierung (PKI) von Zertifizierungsstelle, Server, Client; Diffie-Hellman-Algorithmus
Verwenden Sie das Dienstprogramm easy-rsa, das analog zur Linux-Konsole über die Befehlszeile funktioniert, um die Schlüssel / Zertifikat-Paare aller Knoten des zu erstellenden privaten Netzwerks zu verwalten. Um damit zu arbeiten, öffnen Sie die Befehlszeile (Tastenkombination Win + R, geben Sie cmd ein und drücken Sie die Eingabetaste)
Konfigurationsdateien.
Ausführen von init-config.bat-Skript generiert eine neue Variable.bat-Datei in unserem easy-rsa-Verzeichnis, diese Datei enthält unsere Konfiguration:
cd "C:\Program Files\OpenVPN\easy-rsa"init-config.bat
Jetzt müssen wir das folgende Verzeichnis mit dem Windows Explorer öffnen: C:\Programme\OpenVPN\easy-rsa
Bearbeiten Sie nun mit Notepad (oder einem anderen Texteditor) die Stapeldatei mit dem Namen vars.als nächstes müssen wir einige Variablen konfigurieren…
Ändern Sie die folgenden Einstellungen (näher am Ende der Datei), um Ihre Anforderungen zu erfüllen:
set KEY_COUNTRY=USset KEY_PROVINCE=CAset KEY_CITY=SanFranciscoset KEY_ORG=OpenVPNset [email protected] KEY_CN=changemeset KEY_NAME=changeme
Hinweis: Wenn der Wert der Variablen ein Leerzeichen enthält, setzen Sie ihn in Anführungszeichen.
Als nächstes sollten Sie die Änderungen in der Datei speichern und dann über die Eingabeaufforderung die folgenden Befehle ausführen:
cd "C:\Program Files\OpenVPN\easy-rsa"vars.batclean-all.bat
Zertifizierungsstelle und Serverschlüsselgenerierung
Fahren wir mit der Erstellung des Schlüssels / Zertifikats der Zertifizierungsstelle fort. Führen Sie das Skript aus:
build-ca.bat
Als Antwort auf die angezeigten Eingabeaufforderungen können Sie einfach die Eingabetaste drücken. Die einzige Ausnahme ist das Feld KEY_CN (Common Name) – geben Sie unbedingt einen eindeutigen Namen an und fügen Sie denselben Namen in das Feld Name ein:
Ebenso generieren wir ein Serverzertifikat. Hier ist der Wert der Felder Common Name und Name SERVER:
.\build-key-server.bat server
Hinweis: Das Serverargument ist der Name der zukünftigen Datei.
Alle generierten Schlüssel werden nun gefragt, ob das generierte Zertifikat (Signieren des Zertifikats) im Namen der Zertifizierungsstelle signiert werden soll. Antwort y (ja).
Generieren von Clientschlüsseln und Zertifikaten
Für jeden VPN-Client müssen Sie ein separates SSL-Zertifikat generieren.
In der Open VPN-Konfiguration gibt es eine Option, mit der Sie ein Zertifikat für mehrere Clients verwenden können (siehe Server.ovpn-Datei -> „dublicate-cn“ -Datei), dies wird jedoch aus Sicherheitsgründen nicht empfohlen. Zertifikate können in Zukunft generiert werden, wenn sich neue Kunden verbinden. Daher erstellen wir jetzt nur einen für client1:
Führen Sie die folgenden Befehle aus, um Clientschlüssel zu generieren:
cd \cd "C:\Program Files\OpenVPN\easy-rsa".\build-key.bat client1
Hinweis: client1 Argument ist der Name der zukünftigen Datei.
Geben Sie im Feld Common Name den Namen des Clients an (in unserem Fall client1).
Diffie-Hellman-Parameter
Um die Verschlüsselungseinstellung abzuschließen, müssen Sie das Skript zur Generierung von Diffie-Hellman-Parametern ausführen:
.\build-dh.bat
Das Anzeigen von Informationen zum Erstellen von Parametern sieht folgendermaßen aus:
Generierte Schlüssel / Zertifikate übertragen
Die generierten Zertifikate befinden sich im Verzeichnis C: \ Programme \ OpenVPN \ easy-rsa \ keys. Kopieren Sie die unten aufgeführten Dateien in das Verzeichnis C:\Programme\OpenVPN\config:
- ca.crt
- dh2048.pem/dh1048.pem
- Server.crt
- Server.schlüssel
Öffnen Sie die VPN-Serverkonfiguration
Fahren wir direkt mit der Konfiguration des VPN-Servers fort.ovpn und legen Sie es in das Verzeichnis C: \ Programme \ OpenVPN \ config.
copy "C:\Program Files\OpenVPN\sample-config\server.ovpn" "C:\Program Files\OpenVPN\config"copy "C:\Program Files\OpenVPN\sample-config\client.ovpn" "C:\Program Files\OpenVPN\config"
Öffnen Sie die Datei; Finden Sie den Pfad zu den Schlüsseln (siehe unten). Überprüfen Sie die Pfade zu den zuvor kopierten Zertifikaten ca.crt, dh1024.pem / dh2048.pem, Server.schlüssel, Server.crt und ggf. ändern:
port 1194proto udpdev tunserver 10.8.0.0 255.255.255.0ca "C:\Program Files\OpenVPN\config\ca.crt"cert "C:\Program Files\OpenVPN\config\server.crt"key "C:\Program Files\OpenVPN\config\server.key"dh "C:\Program Files\OpenVPN\config\dh2048.pem"push "redirect-gateway def1"push "dhcp-option DNS 8.8.8.8"keepalive 10 120comp-lzopersist-keypersist-tunverb 3
Speichern Sie die Datei.
Jetzt müssen Sie die Weiterleitung des Datenverkehrs zwischen Adaptern zulassen. Gehen Sie folgendermaßen vor: Systemsteuerung -> Netzwerk und Internet -> Netzwerk- und Freigabecenter -> Adaptereinstellungen ändern. Wählen Sie einen Adapter, der auf das externe Internet schaut (TAP-Adapter ist für die VPN-Verbindung verantwortlich). In unserem Beispiel ist dies Ethernet 2.
Doppelklicken Sie auf die Adaptereigenschaften, wechseln Sie zur Registerkarte Zugriff und aktivieren Sie alle Kontrollkästchen. Speichern Sie die Änderungen.
Als nächstes müssen Sie die IP-Adressierung aktivieren.
Suchen Sie mithilfe der Windows-Suche den REGEDIT.exe-Anwendung.
Suchen Sie im Baum das Verzeichnis HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Parameters. Suchen Sie im rechten Teil des Fensters die Variable IPEnableRouter, doppelklicken Sie in das Wertbearbeitungsfenster und ändern Sie sie in 1, um die Adressierung auf dem VPS zu ermöglichen.
Autorun Open VPN
Konfigurieren Sie den Open VPN-Dienst sofort so, dass er beim Systemstart automatisch ausgeführt wird.
Öffnen Sie die Windows-Dienste. Suchen Sie in der Liste Open VPN -> Rechtsklick -> Eigenschaften -> Start: Automatisch
Damit ist die Grundkonfiguration des Virtual Private Network-Servers abgeschlossen. Suchen Sie die Datei C: \ Programme \ OpenVPN \ config \ server.ovpn -> Rechtsklick -> „OpenVPN in dieser Konfiguration starten“, um den Virtual Private Network Server und die von uns vorbereitete Konfigurationsdatei zu starten.
Open VPN Client-Konfiguration
Open VPN Client-Anwendungen sind für alle gängigen Betriebssysteme verfügbar: Windows / Linux / iOS / Android. Für macOS wird der Tunnelblick Client verwendet. Alle diese Anwendungen arbeiten mit denselben Konfigurationsdateien. Nur einige Unterschiede mehrerer Optionen sind möglich. Sie können mehr darüber erfahren, indem Sie die Dokumentation für Ihren Open VPN-Client lesen. In diesem Handbuch wird die Verbindung eines Windows-Clients mit demselben Distributionspaket des Programms beschrieben, das wir auf dem Server installiert haben. Bei Verwendung von Anwendungen für andere Betriebssysteme ist die Setup-Logik ähnlich.
- Installieren Sie die aktuelle Version von Open VPN auf dem Clientcomputer.
- Kopieren Sie die zuvor auf dem Server erstellten Client-Zertifikatsdateien in das Verzeichnis C: \ Programme \ OpenVPN \ config (2 Zertifikate mit dem .crt-Erweiterung und der Schlüssel mit dem .key extension) und nutzen Sie unseren Client.ovpn-Client-Konfigurationsdatei. Nach dem Kopieren auf das Gerät des Benutzers wird die letzte Datei vom Server gelöscht oder aus dem Konfigurationsordner übertragen, um Verwechslungen in Zukunft zu vermeiden.
- Öffnen Sie den Client.ovpn-Datei. Suchen Sie die Zeile remote my-server-1 1194 und geben Sie die IP-Adresse oder den Domänennamen des VPN-Servers an:
remote <ip-address> 1194</ip-address>
Zum Beispiel:
remote 83.166.241.155 1194
- Finden Sie Wege zu Zertifikaten. Geben Sie darin die Pfade zur Zertifizierungsstelle an.crt, client1.schlüssel, client1.crt-Zertifikate, die früher kopiert wurden, wie im folgenden Beispiel:
# See the server config file for more# description. It's best to use# a separate .crt/.key file pair# for each client. A single ca# file can be used for all clients.ca "C:\Program Files\OpenVPN\config\ca.crt"cert "C:\Program Files\OpenVPN\config\client1.crt"key "C:\Program Files\OpenVPN\config\client1.key"# This file should be kept secret
- Speichern Sie die Datei. Client-Einrichtung abgeschlossen.
Überprüfen Sie die Windows-Firewallregeln
Achtung! Für den korrekten Betrieb des OpenVPN-Dienstes müssen die entsprechenden Ports auf dem Server geöffnet sein (standardmäßig UDP 1194). Überprüfen Sie die entsprechende Regel in Ihrer Firewall: Windows-Firewall oder Antivirensoftware eines Drittanbieters.
Überprüfen Sie die OpenVPN-Verbindungen
Starten Sie den Open VPN-Server, gehen Sie dazu in das Verzeichnis C: \ Programme \ OpenVPN \ config und wählen Sie die Serverkonfigurationsdatei (wir haben Server.ovpn -> Rechtsklick -> „OpenVPN in dieser Konfigurationsdatei starten“).
Starten Sie den Client, gehen Sie dazu in das Verzeichnis C: \ Programme \ OpenVPN \ config und wählen Sie die Client-Konfigurationsdatei (wir haben Client.ovpn -> Rechtsklick -> „Open VPN in dieser Konfigurationsdatei starten“).
Auf dem Bildschirm wird das Fenster Verbindungsstatus angezeigt. In wenigen Sekunden wird es auf das Fach minimiert. Die grüne Anzeige der Open VPN-Verknüpfung im Infobereich zeigt eine erfolgreiche Verbindung an.
Überprüfen Sie die Erreichbarkeit vom Client-Gerät des OpenVPN-Servers mit seiner internen privaten Netzwerkadresse:
- Drücken Sie die Tasten Win + R und geben Sie cmd in das angezeigte Fenster ein, um die Befehlszeile zu öffnen.
- Führen Sie den Ping-Befehl an die Adresse unseres Servers in einem virtuellen privaten Netzwerk aus (10.8.0.1):
ping 10.8.0.1
Wenn das VPN korrekt konfiguriert ist, beginnt der Paketaustausch mit dem Server.
- Mit Hilfe des Tracert-Dienstprogramms überprüfen wir, auf welcher Route die Pakete vom Client gesendet werden. Geben Sie in der Konsole den folgenden Befehl ein:
Aus dem Ergebnis des Dienstprogramms geht hervor, dass die Pakete zuerst an den VPN-Server und erst dann an das externe Netzwerk gesendet werden.
Jetzt haben Sie ein betriebsbereites virtuelles privates Netzwerk, mit dem Sie sichere Netzwerkverbindungen zwischen seinen Clients und dem Server über offene und geografisch entfernte Verbindungspunkte mit dem Internet herstellen können.