OpenVPN: Unterschied zwischen den Versionen
Melle (Diskussion | Beiträge) |
Otto (Diskussion | Beiträge) (ungepflegt?) |
||
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Ungepflegt|Diese Seite ist > 10 Jahre alt und vermutlich nicht mehr aktuell}} | |||
[[Kategorie:Ungepflegt]] | |||
Ein [http://de.wikipedia.org/wiki/Virtual_Private_Network VPN] (virtuelles privates Netzwerk) baut einen verschlüsselter Tunnel von Deinem Rechner zu einer vertrauenswürdigen Gegenstelle im Internet auf. Sämtlicher Datenverkehr von Deinem Rechner wird durch den Tunnel geschickt. Damit ist automatisch '''alles''' verschlüsselt, auf der WLAN-Strecke sind die Daten also sicher. | Ein [http://de.wikipedia.org/wiki/Virtual_Private_Network VPN] (virtuelles privates Netzwerk) baut einen verschlüsselter Tunnel von Deinem Rechner zu einer vertrauenswürdigen Gegenstelle im Internet auf. Sämtlicher Datenverkehr von Deinem Rechner wird durch den Tunnel geschickt. Damit ist automatisch '''alles''' verschlüsselt, auf der WLAN-Strecke sind die Daten also sicher. | ||
Zeile 68: | Zeile 71: | ||
verb 3</pre> | verb 3</pre> | ||
* | * Erstelle mit einem Texteditor eine Datei ca.crt und kopiere das CA-Zertifikat unten dort hinein. Die Datei gehört in das Verzeichnis <code>c:\Programme\OpenVPN\config\</code>. | ||
Der Inhalt der Datei <code>c:\Programme\OpenVPN\config\ca.crt</code> sollte dieser sein: | |||
<pre>-----BEGIN CERTIFICATE----- | <pre>-----BEGIN CERTIFICATE----- | ||
MIIEQDCCA6mgAwIBAgIJAMvturRGeNfbMA0GCSqGSIb3DQEBBQUAMIHHMQswCQYD | |||
VQQGEwJTSTERMA8GA1UECBMIU2xvdmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEg | |||
MB4GA1UEChMXdnBuLmZyZWlmdW5rLXBvdHNkYW0uZGUxITAfBgNVBAsUGGluZm9A | |||
ZnJlaWZ1bmstcG90c2RhbS5kZTEjMCEGA1UEAxMadnBuLmZyZWlmdW5rLXBvdHNk | |||
YW0uZGUgQ0ExJzAlBgkqhkiG9w0BCQEWGGluZm9AZnJlaWZ1bmstcG90c2RhbS5k | |||
ZTAeFw0xMDA5MTgxOTE5MTRaFw0yMDA5MTUxOTE5MTRaMIHHMQswCQYDVQQGEwJT | |||
STERMA8GA1UECBMIU2xvdmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEgMB4GA1UE | |||
ChMXdnBuLmZyZWlmdW5rLXBvdHNkYW0uZGUxITAfBgNVBAsUGGluZm9AZnJlaWZ1 | |||
bmstcG90c2RhbS5kZTEjMCEGA1UEAxMadnBuLmZyZWlmdW5rLXBvdHNkYW0uZGUg | |||
Q0ExJzAlBgkqhkiG9w0BCQEWGGluZm9AZnJlaWZ1bmstcG90c2RhbS5kZTCBnzAN | |||
BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAqa8rQJMIjBXGAt9piGCJQGPPcMFqABHa | |||
AoYdoiGsw4hpwyUzwwiV8CDfrCCrcYqHe3dl5KJjqnPaTUafDDyAobRnlli8/vbe | |||
sVNtrhljYCGlGeEs+LYtB3O5VsFVEojPHV7ta8AEiNliT/kryUmgwp0JKglJAv1S | |||
orijYZbW9J8CAwEAAaOCATAwggEsMB0GA1UdDgQWBBRF6wX9Z+7jV66UFCAxw0Mn | |||
yKo5xTCB/AYDVR0jBIH0MIHxgBRF6wX9Z+7jV66UFCAxw0MnyKo5xaGBzaSByjCB | |||
xzELMAkGA1UEBhMCU0kxETAPBgNVBAgTCFNsb3ZlbmlhMRIwEAYDVQQHEwlManVi | |||
bGphbmExIDAeBgNVBAoTF3Zwbi5mcmVpZnVuay1wb3RzZGFtLmRlMSEwHwYDVQQL | |||
FBhpbmZvQGZyZWlmdW5rLXBvdHNkYW0uZGUxIzAhBgNVBAMTGnZwbi5mcmVpZnVu | |||
ay1wb3RzZGFtLmRlIENBMScwJQYJKoZIhvcNAQkBFhhpbmZvQGZyZWlmdW5rLXBv | |||
dHNkYW0uZGWCCQDL7bq0RnjX2zAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUA | |||
A4GBAJeCZO4IcvcimpvCiohWzolAoYBV4mga2/ZcKcRjQNXYfuepVu1nPjDJzfVd | |||
kT1XzCesLvlJK2ulcxdOgh6J/ULwStmu2zdOYD7Het4o2pFAewZacqA8y2FXKIVo | |||
xFjvkROmtYrz53VXXkkpPuSbnS51M9JBT3Vwx3v1gokJogpW | |||
-----END CERTIFICATE----- | -----END CERTIFICATE----- | ||
</pre> | |||
=== Verbindungsaufbau === | === Verbindungsaufbau === |
Aktuelle Version vom 7. Februar 2021, 23:19 Uhr
Ein VPN (virtuelles privates Netzwerk) baut einen verschlüsselter Tunnel von Deinem Rechner zu einer vertrauenswürdigen Gegenstelle im Internet auf. Sämtlicher Datenverkehr von Deinem Rechner wird durch den Tunnel geschickt. Damit ist automatisch alles verschlüsselt, auf der WLAN-Strecke sind die Daten also sicher.
Windows
OpenVPN runterladen und installieren
- Lade Dir von http://openvpn.se/ die letzte stabile Version der OpenVPN GUI herunter.
- Den Installer
openvpn-2.0.5-gui-1.0.3-install-auto_xp64.exe
starten
- Lizenzen akzeptieren
- Alle Optionen anwählen, bis auf "Hide the TAP-Win32 Virtual Ethernet Adapter". "My Certificate Wizard" wird unbedingt gebraucht.
- Installationsordner auswählen
- Ein bisschen warten ...
- Der Treiber muss installiert werden, sonst funktioniert OpenVPN nicht...
- Fertig :)
Schlüssel und Zertifikat
Für die sichere Kommunikation benötigst Du einen privaten Schlüssel und ein Zertifikat. Den Schlüssel erzeugst Du Dir auf Deinem Computer, das Zertifikat schicken wir Dir.
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. - Mail-Address: deine@mail-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
- Deinen Zertifikatsrequest unter
C:\Programme\OpenVPN\config\vorname_nachname_vpn_freifunk-potsdam_de.req
Kopiere den Request in die Zwischenablage (Knopf Copy to clipboard) und schicke uns diesen per E-Mail. Du kannst auch direkt die Datei vorname_nachname_vpn_freifunk-potsdam_de.req
als Attatchment schicken. Schicke uns nicht Deinen privaten Schlüssel (*.key)!!!
Komm zu unserem Treffen und bring Deinen Personalausweis mit. Dort erhältst Du von uns eine Datei vorname_nachname_vpn_freifunk-potsdam_de.crt
. Kopiere die in das Verzeichnis C:\Programme\OpenVPN\config\
.
Konfiguration
Erstelle eine Textdatei C:\Programme\OpenVPN\config\freifunk-vpn.ovpn
mit folgendem Inhalt (die Dateiendung muss .ovpn sein, nicht .txt!). Achte darauf den korrekten Dateinamen des Zertifikats und des Schlüssels anzugeben.
client dev tun proto udp remote vpn.freifunk-potsdam.de 1192 resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert vorname_nachname_vpn_freifunk-potsdam_de.crt key vorname_nachname_vpn_freifunk-potsdam_de.key ns-cert-type server comp-lzo verb 3
- Erstelle mit einem Texteditor eine Datei ca.crt und kopiere das CA-Zertifikat unten dort hinein. Die Datei gehört in das Verzeichnis
c:\Programme\OpenVPN\config\
.
Der Inhalt der Datei c:\Programme\OpenVPN\config\ca.crt
sollte dieser sein:
-----BEGIN CERTIFICATE----- MIIEQDCCA6mgAwIBAgIJAMvturRGeNfbMA0GCSqGSIb3DQEBBQUAMIHHMQswCQYD VQQGEwJTSTERMA8GA1UECBMIU2xvdmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEg MB4GA1UEChMXdnBuLmZyZWlmdW5rLXBvdHNkYW0uZGUxITAfBgNVBAsUGGluZm9A ZnJlaWZ1bmstcG90c2RhbS5kZTEjMCEGA1UEAxMadnBuLmZyZWlmdW5rLXBvdHNk YW0uZGUgQ0ExJzAlBgkqhkiG9w0BCQEWGGluZm9AZnJlaWZ1bmstcG90c2RhbS5k ZTAeFw0xMDA5MTgxOTE5MTRaFw0yMDA5MTUxOTE5MTRaMIHHMQswCQYDVQQGEwJT STERMA8GA1UECBMIU2xvdmVuaWExEjAQBgNVBAcTCUxqdWJsamFuYTEgMB4GA1UE ChMXdnBuLmZyZWlmdW5rLXBvdHNkYW0uZGUxITAfBgNVBAsUGGluZm9AZnJlaWZ1 bmstcG90c2RhbS5kZTEjMCEGA1UEAxMadnBuLmZyZWlmdW5rLXBvdHNkYW0uZGUg Q0ExJzAlBgkqhkiG9w0BCQEWGGluZm9AZnJlaWZ1bmstcG90c2RhbS5kZTCBnzAN BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAqa8rQJMIjBXGAt9piGCJQGPPcMFqABHa AoYdoiGsw4hpwyUzwwiV8CDfrCCrcYqHe3dl5KJjqnPaTUafDDyAobRnlli8/vbe sVNtrhljYCGlGeEs+LYtB3O5VsFVEojPHV7ta8AEiNliT/kryUmgwp0JKglJAv1S orijYZbW9J8CAwEAAaOCATAwggEsMB0GA1UdDgQWBBRF6wX9Z+7jV66UFCAxw0Mn yKo5xTCB/AYDVR0jBIH0MIHxgBRF6wX9Z+7jV66UFCAxw0MnyKo5xaGBzaSByjCB xzELMAkGA1UEBhMCU0kxETAPBgNVBAgTCFNsb3ZlbmlhMRIwEAYDVQQHEwlManVi bGphbmExIDAeBgNVBAoTF3Zwbi5mcmVpZnVuay1wb3RzZGFtLmRlMSEwHwYDVQQL FBhpbmZvQGZyZWlmdW5rLXBvdHNkYW0uZGUxIzAhBgNVBAMTGnZwbi5mcmVpZnVu ay1wb3RzZGFtLmRlIENBMScwJQYJKoZIhvcNAQkBFhhpbmZvQGZyZWlmdW5rLXBv dHNkYW0uZGWCCQDL7bq0RnjX2zAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUA A4GBAJeCZO4IcvcimpvCiohWzolAoYBV4mga2/ZcKcRjQNXYfuepVu1nPjDJzfVd kT1XzCesLvlJK2ulcxdOgh6J/ULwStmu2zdOYD7Het4o2pFAewZacqA8y2FXKIVo xFjvkROmtYrz53VXXkkpPuSbnS51M9JBT3Vwx3v1gokJogpW -----END CERTIFICATE-----
Verbindungsaufbau
- Wähle im Kontextmenü der OpenVPN GUI die Option connect.
- Nach ein paar Sekunden sollte die Farbe des OpenVPN-Icons von gelb nach grün wechseln und das Fenster ausgeblendet werden. Du bist jetzt sicher im Freifunk-Netz unterwegs :-)
Fehlersuche
- Nur das Root-Zertifikat:
VERIFY ERROR: depth=0, error=unable to get local issuer certificate: /CN=vpn.freifunk-potsdam.de
- Nur das class3-Zertifikat
VERIFY ERROR: depth=1, error=unable to get issuer certificate: /O=CAcert_Inc./OU=http://www.CAcert.org/CN=CAcert_Class_3_Root
Windows
- Unbedingt darauf achten, daß alle Config-/Zertifikats-/Text-Dateien "without Byte Order Mark (BOM)" (also am besten als reines UTF-8) im Editor abgespeichert werden, sonst regnet's unplausibel klingende Fehlermeldungen.
Mac OS X
... bitte die Doku für Mac OS ergänzen :)
- Tunnelblick ist der Client der Wahl unter Mac OS X
Linux
Konfiguration
- 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.req
- Die Konfiguration liegt unter
/etc/openvpn/client.ovpn
- kopiere die Dateien
vorname_nachname.cert
undvorname_nachname.key
in dieses Verzeichnis - Lade das class3 und class1 Root-Zertifikat von cacert.org herunter:
$ wget http://www.cacert.org/certs/root.crt $ wget https://www.cacert.org/certs/class3.crt
- Kopiere beide Zertifikate in eine Textdatei:
$ cat root.crt class3.crt > ca.crt
Routing
- 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
durchremote 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
Eigener Server
Das Funktionsprinzip und einige Hinweise zum Aufsetzen eines eigenen Servers erfahrt ihr unter OpenVPN-Server