Archiv der Kategorie: Workaround

Usability and Addons Integration unblog Technical Workarounds and Tutorials for Professionals

OpenVPN Connect Verbindung von iPhone und Android

OpenVPN erfreut sich bei vielen Nutzer zunehmender Beliebtheit. So bietet die OPNsense Firewall ein gut integrierten OpenVPN Server mit zahlreichen Features, aber auch Hersteller verwenden OpenVPN, wie die Synology NAS Geräte, wo OpenVPN Teil des VPN-Server ist, dieser im DSM Paket-Zentrum zur verfügung steht. Die beliebte Open Source VPN Lösung gibt es für alle etablierten Platformen, von Linux und Windows bis MacOS und mobile Geräte mit iOS und Android.

Dieses Tutorial zeigt die Einrichtung und Anwendung von OpenVPN Connect für VPN Verbindungen unter iOS und Android.

OpenVPN Connect auf iPhone und Android

Zunächst wird die OpenVPN Connect App auf das Endgerät geladen. Diese steht im Apple App Store und bei Google Play kostenlos zur Verfügung.

OpenVPN Apple StoreOpenVPN Google Play

Die Konfiguration der Clients erfolgt über den ovpn-Datei Import, diese alle erforderlichen Einstellungen enthält.

OpenVPN
  1. OpenVPN Connect App Android öffnen
  2. Upload File Antippen
  3. BROWSE Antippen
  4. Ordner Eigene DateienDownloads wählen
  5. OpenVPN Konfigurationsdatei .ovpn wählen
  6. Fertig Antippen
  7. Import .ovpn profile? OK
  8. Username eingeben und CONNECT
  9. Passwort eingeben. Bei 2FA OTP Token + Passwort

  Weitere OpenVPN Profile importieren mit tippen auf das + Symbol.

Bilderstrecke OpenVPN Connect App Android Import Profile.

  Beim ersten Verbindungsaufbau nach Antippen des Schiebeschalters, verlangen die App um Erlaubnis, für das Hinzufügen der VPN-Konfiguration. Wurde alles erfolgreich abgeschlossen, wird vom Client ein VPN-Tunnel zum Server aufgebaut, was die App über den Status CONNECTED ausgibt.

OpenVPN Konfigurationsdatei übertragen

Der einfachste Weg, um die Konfigurationsdatei (.ovpn) auf ein iOS oder Android Gerät zu übertragen, besteht darin, die Datei per Bluetooth vom PC auf das Smartphone oder Tablett zu übertragen. Dabei stellt man erst eine Bluetooth-kopplung der beiden Gräte her, anschliessend wählt man am PC über der OVPN-Datei mit der rechten Maustaste das Kontextmenü und wählt dann – Senden an Bluetooth-Gerät.

OVPN-Datei Senden an Bluetooth-Gerät

Nach Bestätigung mit OK sollte die OVPN-Datei nun auf dem mobilen Gerät unter „Eigene Dateien“ im Ordner „Downloads“ zu finden sein.

Alternativ kann man die OVPN-Datei per E-Mail an die eigene E-Mail-Adresse senden, um sie anschliessend auf dem Smartphone oder Tablett zu speichern, oder via Cloud-Speicher, und falls vorhanden, über eine lokale Synchronisation wie beispielsweise mit Synology Drive.

Fazit

OpenVPN als Open-Source Lösung ist für alle Clients verbreiteter Plattformen verfügbar, darunter für iOS und Android.

Die entsprechende App erhält man über den jeweiligen Store und die Konfiguration erfolgt über eine Datei, die alle Einstellungen enthält und die man vom OpenVPN-Server herunterlädt.

Als OpenVPN-Server empfiehlt sich besonders die OPNsense-Firewall. Zahlreiche Optionen können konfiguriert werden, wie z. B. Client- und Serverzertifikate und 2FA-Authentifizierung, mit der Integration von LDAP für Active Directory und Google Authenticator TOTP für Multi-Faktor-Authentifizierung.

Quellen Links:

Namensauflösung über VPN mit Split Horizon DNS

Mit Split Horizon DNS in VPN-Verbindungen können Clients die Netzwerk Ressourcen oft nicht auflösen, mit diesen die VPN-Clients verbunden sind. Das ist vor allem bei einer Active Directory Domäne problematisch, weil die Clients dann keine Domänen-Controller zur Anmeldung erreichen können. Die Anmeldung erfolgt dann lediglich über den lokalen Lsass-Cache, die Gruppenrichtlinien und Anmeldeskripts werden dabei nicht ausgeführt.

In diesem Tutorial beschreibe ich, wie man bei VPN Clients die Namens Auflösung ermöglicht, innerhalb der Netzwerk Infrastruktur der Organisation.

Schnittstellenmetrik anpassen in Split Horizon DNS VPN-Verbindungen

Um die Windows Schnittstellenmetrik zu steuern und den DNS-Server nach der Einwahl der VPN-Verbindung zu bevorzugen, kann der VPN-Schnittstelle eine höhere Priorität und damit niedrigere Metrik zuweisen werden, über die TCP/IP-Einstellungen der Netzwerkadapter mit den Tasten Windows+R und der Eingabe ncpa.cpl

In den Eigenschaften des entsprechenden Netzwerkadapter öffnet man mit einem Doppelklick, Internetprotokoll, Version 4 (TCP/IPv4), dann über die Schaltfläche Erweitert, hier findet man das Feld für den Wert der Schnittstellenmetrik.

Split Horizon DNS VPN TCP/IP-Einstellung Schnittstellenmetrik

Hier sollte für die VPN-Schnittstelle „Automatische Metrik“ nicht aktiviert sein, es kann ein niedriger Wert eingetragen werden. Nach einer erneuten Imitierung sollte die Namensauflösung über das VPN-Netzwerk stattfinden.

Multicastnamensauflösung deaktivieren

Mit Windows 10 und 11 wurde Smart Multi-Homed Name Resolution (SMHNR) eingeführt, um die Namensauflösung zu beschleunigen werden die DNS-Anfragen an mehrere DNS-Server gleichzeitig gesendet.

Das hat einen unerwünschten Nebeneffekt, denn es werden die Anfragen zur internen Namensauflösung an externe DNS-Server („DNS Leakage“) gesendet. Deren Betreiber können hierdurch eine detaillierte Übersicht der IT-Ressourcen des Unternehmens erhalten.

Die betreffende Einstellung Multicastnamensauflösung deaktivieren („Turn off smart multi-homed name resolution“) unter Computer Configuration => Administrative Templates => Network > DNS Client.

GPO Multicastnamensauflösung deaktivieren

Schnittstellenmetrik in PowerShell anpassen

Die Schnittstellenmetriken der verschiedenen Netzwerk­verbindungen lassen sich in der PowerShell sortiert anzeigen, mit folgendem Befehl.

PS C:\> Get-NetIPInterface | Sort-Object Interfacemetric

Die PowerShell zeigt nun übersichtlich alle Schnittstellen Metriken.

Get-NetIPInterface Sort-Object Interfacemetric

Alternativ lassen sich die Metriken mit dem Dienstprogramm netsh.exe ausgeben, wenn auch nicht so detailiert wie in der PowerShell.

C:\> netsh int ip show interfaces

Idx     Met         MTU          State                Name
---  ----------  ----------  ------------  ---------------------------
  1          75  4294967295  connected     Loopback Pseudo-Interface 1
 10           5       65535  disconnected  OpenVPN Wintun
 12          40        1500  connected     WLAN
 15           5        1500  disconnected  Ethernet
  8          25        1500  disconnected  OpenVPN TAP-Windows6
 11          65        1500  disconnected  Bluetooth-Netzwerkverbindung
 17          25        1500  disconnected  OpenVPN Data Channel Offload
 16          25        1500  disconnected  LAN-Verbindung* 3
 22          25        1500  disconnected  LAN-Verbindung* 12
  4          35        1500  connected     VMware Network Adapter VMnet1
  6          35        1500  connected     VMware Network Adapter VMnet8

Die Schnittstellenmetrik wird in der PowerShell wie folgt geändert.

PS C:\> Set-NetIPInterface -InterfaceIndex <ifIndex Wert> -InterfaceMetric <Metrik>

Die Identifizierung des Netzwerkadapters erfolgt über den Parameter -InterfaceIndex, den man bei der Abfrage mit dem Cmdlet Get-NetIPInterface in der Spalte ifIndex erhält.

Fazit

In diesem Tutorial zeigen wir, wie die Namensauflösung bei VPN-Clients, über die getunnelte VPN-Verbindungen ermöglicht werden kann. Die Netzwerk Ressourcen werden aufgelöst und die Domänen-Controller zur Authentifizierung werden erreichbar. Die Anmeldung kann über Local Security Authority Subsystem Service (LSASS) erfolgen, dabei Gruppenrichtlinien und Anmeldeskripts ausgeführt werden.