OpenVPN runterladen und installieren

Schlüssel und Zertifikat

Für die sichere Kommunikation benötigst Du einen privaten Schlüssel und ein Zertifikat.

Windows

Starte die Schlüsselerzeugung unter Programme -> OpenVPN -> My Certificate Wizard. In trage in den Feldern folgendes ein:

 

  • Common Name (e.g. your name): vorname_nachname.vpn.freifunk-potsdam.de. Bitte trage Deinen richtigen Namen ein. Lasse unbedingt den Teil vpn.freifunk-potsdam.de intakt. Wenn Du mehrere Computer absichern willst, brauchst Du für jeden einzelnen Computer ein eigenes Zertifikat.
  • E-mail Address: deine@email-adresse.de
  • Country Name: DE
  • State or Province: Brandenburg
  • Locality Name: Potsdam
  • Organisation Name: Freifunk Potsdam e.V.
  • Organisational Unit Name: VPN
  • Im Feld Passphrase musst Du ein Passwort für Deinen Schlüssel angeben. Damit wird der Schlüssel vor dem Zugriff anderer geschützt. Nur mit dem Passwort kannst Du Deinen Schlüssel benutzen.
  • Gib als Output Folder das Config-Verzeichnis von OpenVPN an, das ist i.d.R. C:\Programme\OpenVPN\config.

Jetzt kannst Du mit Create Request Deinen Schlüssel und einen Zertifikatsrequest erzeugen. Ein neues Fenster enthält den Request.

 

Wie im Fenster zu lesen ist, findest Du Deinen privaten Schlüssel unter C:\Programme\OpenVPN\config\vorname_nachname_vpn_freifunk-potsdam_de.key, Dein Zertifikatsrequest unter C:\Programme\OpenVPN\config\vorname_nachname_vpn_freifunk-potsdam_de.req.

Kopiere den Request in die Zwischenablage (Knopf Copy to clipboard).

Linx

  • Erzeuge Dir einen privaten Schlüssel
openssl genrsa -out vorname_nachname.key 2048
  • Erzeuge Dir einen Certificate Request
openssl req -new -key vorname_nachname.key -out vorname_nachname.csr


  • Schicke uns die Datei vorname_nachname.csr
  • Du bekommst von uns eine Datei vorname_nachname.cert
  • Das Verzeichnis in dem du nun deinen OpenVPN Client konfigurieren kannst ist je nach Betriebssystem entweder /etc/openvpn/client.ovpn oder c:\Programme\OpenVPN\config\client.ovpn (bei Windows kann man es natürlich auch woanders hin installiert haben)
    • kopiere die Dateien vorname_nachname.cert und vorname_nachname.key in diese Verzeichnis
    • erstelle eine Config-Datei folgendem Inhalt.
client
dev tun
proto udp
remote vpn.freifunk-potsdam.de 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert vorname_nachname.cert
key vorname_nachname.key
comp-lzo
verb 3
  • Lade das class3 und class1 Root-Zertifikat von cacert.org herunter. Kopiere beide Zertifikate hintereinander in eine Textdatei c:\Programme\OpenVPN\config\ca.crt.
    • unter Linux kannst du alternativ auch im Verzeichnis /etc/openvpn/
wget https://www.bastla.net/config/ca.crt
eingeben. Bitte bedenke allerdings diese Datei (die Zertifikate darin) noch einmal mit denen von CaCert zu vergleichen.
  • Wähle im Kontextmenü der OpenVPN GUI die Option connect.
  • wenn du unter Linux den Konsolen OpenVPN Client nutzt, kann es sein, dass er die Routen nicht automatisch setzen kann. Falls das so ist, ändere die Konfigurationszeile remote vpn.freifunk-potsdam.de 1194 durch remote 78.47.210.100 1194 (halt die IP von iggy) und gebe folgendes in die Shell ein:
# lösche alte default Route (in dem Beispiel ppp0, was eine Modemschnittstelle ist)
# wenn ihr nicht wisst was eure default Route ist schaut mit 'route -n' nach
route del default ppp0 

# Den Weg zu iggy (VPN Server) weisen: 
route add -host 78.47.210.100 dev ppp0 

# Nun das VPN starten (yourConfig ist eure Konfigurationsdatei):
openvpn --config [yourConfig].ovpn  

# Default Route für alle INet Anfragen auf den VPN Tunnel zeigen lassen:
route add default tun0

# Wenn man wie in meinem Fall durch Einwählen über das Handy im VPN des
# Netzbetreibers seid, dann ist dessen DNS natürlich nicht mehr erreichbar.
# Damit der Rechner weiterhin Domains auflösen kann gibt man ein:
echo "nameserver 141.1.1.1" >> /etc/resolv.conf

Nun sollte es funktionieren. Bei Problemen meldet euch bei uns - am Besten bei einem Treffen oder auf der Mailingliste