OpenVPN via Android-Smartphone nutzen

© Ints Vikmanis, 123RF

Zugangsschutz

,
Wer von unterwegs via Smartphone auf den heimischen Datenbestand zugreifen will, muss die Kommunikation schützen. Dafür bietet sich ein VPN an. Mit OpenVPN auf dem Server und CyanogenMod auf dem Smartphone geht Konfiguration leicht von der Hand. Aber auch mit dem originalen Android-OS gelingt der Zugriff.
RAID-Technologie verspricht höhere Performance und mehr Sicherheit beim permanenten Speichern von Daten. Die ADMIN-Redaktion gibt einen Überblick über ... (mehr)

Ist man viel unterwegs, kommt man oft in die Verlegenheit, aus der Ferne auf das private oder Firmennetzwerk zugreifen zu wollen. Der Abgleich der Daten muss jedoch sicher sein – dafür empfiehlt sich eine VPN-Verbindung. So werden die Daten verschlüsselt übertragen, und die Kommunikationspartner müssen sich authentifizieren.

Die klassische VPN-Lösung im Open-Source-Bereich heißt OpenVPN [1]. Sie überträgt die Daten verschlüsselt über eine TLS-Verbindung. Als Transportprotokoll stehen wahlweise TCP und UDP zur Verfügung. Die Authentifizierung von Client und Server erfolgt über Benutzername und Passwort, einen gemeinsamen Schlüssel (Pre-shared Key) oder mit Zertifikaten. Das letztgenannte Verfahren gilt im Allgemeinen als das sicherste und wird deshalb hier vorgestellt.

Der OpenVPN-Server findet sich in der Paketverwaltung der meisten Linux-Distributionen und der BSD-Betriebssysteme und steht auch für Mac OS X und Windows bereit. Sind die dort angebotenen Pakete zu alt, lädt man aktuellere von der Projektseite entpackt und istalliert sie mit

 

Der Server und alle Anwender, die auf ihn zugreifen wollen, benötigen jeweils einen privaten Schlüssel (*.key) sowie ein Zertifikat (*.crt). Diese Zertifikate müssen von einer dem Server bekannten Zertifizierungsstelle (CA) signiert sein. Für den Verbindungsaufbau werden serverseitig noch Diffie-Hellman-Parameter (dh1024.pem) benötigt.

Zertifikate

Die für die Verbindung zwischen Client und Server nötigten Zertifikate kann man sich selbst mit den Bibliotheken von OpenSSL herstellen. OpenVPN bietet im Unterverzeichnis »easy-rsa« verschiedene Skripte, mit denen Zertifikate auch ohne weitere Vorkenntnisse erzeugt werden können, dabei ist zunächst das Verzeichnis »easy-rsa« samt seinem kompletten Inhalt nach »/etc/openvpn« zu kopieren. Dann wechselt man in dieses Verzeichnis.

Im ersten Schritt werden dort einige Parameter der Datei »vars« den eigenen Gegebenheiten angepasst:

 

Zusätzlich zu diesen Angaben werden bei Bedarf noch die Schlüssellänge (»KEY_SIZE« ), die Gültigkeitsdauer der Zertifikate der CA (»CA_EXPIRE« ) und der Client- beziehungsweise die Server-Zertifikate (»KEY_EXPIRE« ) eingestellt.

Durch die Aufrufe

 

werden nacheinander die gesetzten Parameter geladen, das Verzeichnis »keys« (sofern bereits vorhanden) aufgeräumt und der öffentliche und private Schlüssel der CA (»build-ca« ), des Servers (»build-key-server server« ) und des Clients (»build-key client1« ) sowie die Diffie-Hellman Parameter (»build-dh« ) generiert.

Angaben in vars

Beim Schreiben der Zertifikate sind verschiedene Angaben zu machen, einen möglichen Ablauf für ein Client-Zertifikat zeigt Listing 1, bei den anderen Zertifikaten läuft es sehr ähnlich ab.

Listing 1

Definieren eines Client-Zertifikats

 

Die Auskünfte zu Land, Stadt und so weiter wurden in »vars« gesetzt und können so auch für andere Zertifikate übernommen werden, eine Ausnahme bildet der »Common Name« , der immer eindeutig sein muss.

Die mit diesen Aufrufen generierten Dateien landen im Unterverzeichnis »keys« . Von hier aus müssen abschließend noch die Dateien »ca.crt« , »server.crt« , »server.key« und »dh1024.pem« nach »/etc/openvpn« kopiert werden. Es kann auch ein anderes Zielverzeichnis angegeben werden, dann ist die nachfolgende Serverkonfiguration anzupassen.

comments powered by Disqus

Artikel der Woche

Setup eines Kubernetes-Clusters mit Kops

Vor allem für Testinstallationen von Kubernetes gibt es einige Lösungen wie Kubeadm und Minikube. Für das Setup eines Kubernetes-Clusters in Cloud-Umgebungen hat sich Kops als Mittel der Wahl bewährt. Wir beschreiben seine Fähigkeiten und geben eine Anleitung für den praktischen Einsatz. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018

Microsite