OpenVPN ohne Administratorrechte unter Windows nutzen
OpenVPN hat sich als sichere Software zur Kommunikation über Virtuelle Private Netze etabliert, um innerhalb offener und ungeschützter Netze verschlüsselte und sichere Verbindungen herzustellen.
Da OpenVPN für eine korrekte Funktionsweise Netzwerkrouten ändern muss, dies aber ab Windows Vista Administratoren vorbehalten ist, wird immer wieder empfohlen, OpenVPN mit Administrator-Rechten zu starten, damit das Programm die geänderten Netzwerkrouten korrekt setzen kann.
Doch nicht immer dürfte es in der Absicht des Systembetreuers liegen, allen Nutzern, die OpenVPN nutzen sollen, gleichzeitig Administrator-Rechte zu geben. Unter sicherheitstechnischen Gesichtspunkten ist dies sogar unverantwortlich. Man gewährt damit einem vermeintlich vertrauenswürdigem Rechner von außerhalb Zugriff auf den zu schützenden inneren Netzwerkbereich, und kann doch gleichzeitig nicht sicher sein, dass dieser Rechner durch Missbrauch der administrativen Rechte, sei es durch Schadprogramme oder den Nutzer selbst, nicht mittlerweile kompromittiert wurde und damit das ganze Netz gefährdet.
Die Lösung
Bei der Installation von OpenVPN unter Windows wird auch ein OpenVPN-Dienst installiert. Dieser kann ebenfalls dazu verwendet werden, eine OpenVPN-Verbindung herzustellen. Da ein Dienst automatisch mit administrativen Rechten ausgeführt wird, kann der OpenVPN-Dienst also auch Netzwerkrouten ändern. Wenn es also gelingt, einem normalen Nutzer lediglich die entsprechenden Rechte zum Starten des OpenVPN-Dienstes zu gewähren, benötigt dieser nicht mehr von vornherein Administrator-Rechte.
Bei der Installation von OpenVPN wird ein entsprechender Dienst gleich mit installiert.Möglich wird dies durch Anpassung der lokalen Gruppenrichtlinien. Windows bietet hierfür über das "Microsoft Security Compliance Toolkit"
Sicherheitsvorlagen an, mit denen richtlinienbasiert sicherheitsspezifische Einstellungen angepasst werden können. Laden Sie also zunächst das Toolkit herunter und entpacken Sie dieses in einen Ordner. Im Toolkit enthalten sind Inf-Dateien, die bereits vorkonfigurierte Sicherheitseinstellungen jeweils für "Desktop" , "Laptop" und "Domain" enthalten.
Öffnen Sie nun als Administrator die "Microsoft Management Console" (mmc) und fügen Sie das Snap-In Sicherheitskonfiguration und -Analyse hinzu. Mit diesem Snap-In kann die lokale Systemsicherheit analysiert und mit Hilfe der Sicherheitsvorlagen auch konfiguriert werden. Wählen Sie nun unter "Aktionen" Datenbank öffnen. Da noch keine Datenbank existiert,müssen Sie hier einen Speicherort und Dateinamen für eine neu zu erstellende Datenbank angeben.
Sie werden nun aufgefordert, eine Sicherheitsvorlage in Form einer "INF"-Datei zu importieren. Wählen Sie dazu eine der mitgelieferten Dateien aus dem Security Compliance Management Toolkit. Für einen Laptop mit normalen Sicherheitsanforderungen empfiehlt sich hier die Datei "Win7-EC-Laptop.INF". Weitere Informationen zu den einzelnen Vorlagen und dem Unterschied zwischen den EC- und SSLF-Vorlagen finden Sie in dem Dokument "Windows® Security Guide", welches Bestandteil des Toolkits ist.

Wählen Sie danach unter Aktionen Computer jetzt analysieren, um die aktuelle Konfiguration des Computers einzulesen.
Navigieren Sie, nachdem der Vorgang abgeschlossen ist, innerhalb des Snap-Ins zu Systemdienste. Dort sollte auch der OpenVPN-Dienst aufgeführt sein.
Über das Snap-In können Systemdienste konfiguriert werdenIn den Eigenschaften des OpenVPN-Dienstes aktivieren Sie "Diese Richtlinie in der Datenbank definieren". Klicken Sie dann auf "Sicherheit bearbeiten". Hier können jetzt die Nutzer hinzugefügt werden, denen das Recht zum Starten und Stoppen des Dienstes gewährt werden soll.
Zum Ausführen des Dienstes berechtigte Nutzer hinzufügenUm die gemachten Änderungen wirksam werden zu lassen, müssen die geänderten Sicherheitsrichtlinien auf den Computer angewendet werden. Wählen Sie dazu als nächstes die Aktion "Computer jetzt konfigurieren". Achtung: Je nach vorheriger Konfiguration des Computers können durch die Übernahme der Sicherheitsvorlage Einstellungen geändert werden. Überprüfen Sie deshalb auch die anderen Einstellungen der Sicherheitsvorlage und testen Sie die Auswirkungen ausgiebig vor einer Übernahme in ein Produktivsystem.

Nach der Übernahme der Sicherheitsrichtlinen sollte nun auch ein Nutzer mit eingeschränkten Rechten die Möglichkeit haben, den OpenVPN-Dienst zu starten oder zu stoppen und damit bei Bedarf eine VPN-Verbindung aufzubauen oder zu beenden.Dies geht entweder über die Eingabeaufforderung mit net start "OpenVPN Service" oder über Systemsteuerung->Verwaltung->Dienste. Allerdings kann das OpenVPN-GUI auch dahingehend umkonfiguriert werden, dass zum Herstellen einer VPN-Verbindung nicht die "openvpn.exe", sondern der OpenVPN-Dienst genutzt wird. Dazu ist ein Eingriff in die Registry notwendig. Rufen Sie als Administrator "regedit" auf und suchen Sie in der Registry nach "OpenVPN-GUI". Wenn Sie dort die beiden Parameter service_only und allow_service auf 1 setzen, verwendet das OpenVPN-GUI den OpenVPN-Service zum Herstellen bzw. Beenden einer VPN-Verbindung.
Damit die OpenVPN-GUI den Dienst verwendet, ist ein Eingriff in die Windows-Registraturnotwendig.Nun kann wieder wie gewohnt das OpenVPN-GUI zum Etablieren einer VPN-Verbindung genutzt werden.

Einschränkungen
Das geschilderte Vorgehen hat folgende Einschränkungen:
- Beim Starten des Dienstes wird für alle im config-Ordner hinterlegten OpenVPN-Konfigurationen versucht, eine OpenVPN-Verbindung herzustellen. Ein selektives Starten einzelner Konfigurationen über die OpenVPN-GUI ist nicht möglich.
- Beim Starten von OpenVPN als Service können keine privaten Schlüssel genutzt werden, die mit einem Kennwort geschützt sind, da das OpenVPN-GUI keine Möglichkeit bietet, Passphrasen abzufragen und an den OpenVPN-Service zu übergeben.
- Das OpenVPN-GUI kann keine Informationen über den Verbindungsstatus anzeigen. Es wird lediglich angezeigt, dass der OpenVPN-Service gestartet wurde, unabhängig davon, ob tatsächlich eine Verbindung hergestellt werden konnte.
Diese Einschränkungen sollte aber im Hinblick auf den Sicherheitsgewinn verschmerzbar sein und hingenommen werden.
Weiterführende Informationen
- OpenVPN Homepage

- HowTo Run OpenVPN as a non-admin user in Windows

- Microsoft Security Compliance Management Toolkit Series






