Nachdem ich mir für einen Kunden kürzlich alles zu diesem Thema mühsam zusammensuchen musste denke ich, dass ein gesammeltes und entstreutes HowTo durchaus anklang finden könnte.
Zur Infrastruktur:
- Ubuntu 14.04 Server mit OpenVPN Server
- Windows Clients (7 & 8.1) stellen mit OpenVPN über ein “client.ovpn” File eine Verbindung her
- ca.crt, client-zert.crt und client-key.key werden serverseitig generiert.
Der Server
Hierbei wird davon ausgegangen, dass OpenVPN bereits aufgesetzt ist und ein entsprechendes ca.crt Zertifikat sowie Diffie-Hellman PEM in 1024 bzw. 2048 bits generiert wurden. Iptables für den in diesem Fall benutzten Port 1194 müssen ggfls. eingerichtet werden.
Die “server.conf” wird wiefolgt bereitgestellt:
port 1194 proto tcp dev tun ca easy-rsa/keys/ca.crt cert easy-rsa/keys/server-zertifikat.crt key easy-rsa/keys/server-key.key # This file should be kept secret dh easy-rsa/keys/dh1024.pem server 10.12.0.0 255.255.255.0 # Subnetz gegebenenfalls anpassen push "route 192.168.2.0 255.255.255.0" # Route ebenfalls ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo # Komprimierung persist-key persist-tun status openvpn-status.log log-append openvpn.log verb 6
Diese in
/etc/openvpn/server.conf
legen. Danach den Server mit
sudo openvpn --config /etc/openvpn/server.conf
starten.
Um einen Key und ein Zertifikat für einen Client zu generieren ins OpenVPN-Verzeichnis wechseln und mit
./build-key vpnclient1
Key und Zertifikat erstellen. vpnclient1 ist hierbei Platzhalter, für jede Generierung wird ein neuer unique Name benötigt. Während des Prozesses werden auch Benutzername und Passwort abgefragt. Diese müssen sofern gesetzt beim Aufbauen jeder Verbindung eingegeben werden. Es ist dringend ratsam dort etwas zu definieren.
Der Client
Die auf dem Server generierten Dateien (ca.crt, vpnclient1.crt & vpnclient1.key) müssen auf den Clientrechner übertragen werden. Dort ist es am Besten, diese ins “config” Verzeichnis der OpenVPN Installation zu legen, in der Regel ist dieses in C://Programme/OpenVPN/ zu finden.
Dann mit dem Texteditor der Wahl eine “client.ovpn” erstellen welche folgenden (natürlich anzupassenden) Inhalt hat :
client dev tun proto tcp remote SERVER-IP 1194 # Durch die Server-IP ersetzen resolv-retry infinite nobind persist-key persist-tun ns-cert-type server verb 3 auth-user-pass comp-lzo yes ca "C:\\Programme\\OpenVPN\\config\\ca.crt" # Anzupassen falls die Dateien anderweitig liegen cert "C:\\Programme\\OpenVPN\\config\\vpnclient1.crt" # "" key "C:\\Programme\\OpenVPN\\config\\vpnclient1.key" # ""
und zum Beispiel für den User gemütlich auf den Desktop liegen. Die Verbindung kann dann mit einem Rechtsklick auf die Datei und dem Menüpunkt “Verbindung mit dieser Datei herstellen” gestartet werden.
Be First to Comment