Aus Linux-Magazin 01/2016

Pritunl als Alternative zu klassischen Open-VPN-Verbindungen

© HONGQI ZHANG, 123RF

Pritunl will Anwendern zu einer völlig neuen VPN-Erfahrung verhelfen. Es nutzt zwar das Protokoll von Open VPN, hat mit diesem aber nicht viel gemein. Stattdessen lässt der Newcomer verbal die Muskeln spielen.

Für Unternehmen gibt es viele Gründe, den eigenen Mitarbeitern unterwegs den Zugriff auf die Firmen-IT zu gewähren, und auch Privatanwendern ist die Nach-Hause-Connection nicht fremd. Denn in immer mehr Haushalten finden sich große NAS-Laufwerke mit etlichen Terabyte Platz, die als Silo für die wichtigsten persönlichen Daten dienen. Da verwundert es nicht, dass viele lieber einmalig in die Geräte von Synology, Qnap & Co. investieren und von unterwegs per VPN auf die Daten daheim zugreifen wollen. Welche Tools bieten sich an?.

Open VPN ist der Standard

Open VPN hat sich über viele Jahre einen ausgezeichneten Ruf erarbeitet. Das ist kein Wunder: Braucht doch zum Beispiel ein fertig installiertes Ubuntu 14.04 nicht viel mehr als lediglich die Installation des Pakets »openvpn« , um so zum Open VPN-Server zu werden. Im Idealfall lässt sich ein funktionierendes Client-Server-Setup mit Open VPN in wenigen Minuten bewerkstelligen.

So erklärt sich auch, wie Open VPN de facto aus dem Stand IPsec vom VPN-Thron verdrängen konnte, das zuvor der Quasi-Standard in Sachen VPN war. Hinzu kommt, dass Open VPN auch auf der Client-Seite sehr leicht einzurichten ist: Android bringt einen Open-VPN-Client ab Werk mit. Wer auf I-OS setzt, findet im App Store entsprechende Programme. Clients für Windows, Linux oder OS X gibt es selbstverständlich auch.

Pritunl bläst zum Angriff

Da stieß es bei der Redaktion des Linux-Magazins auf Skepsis, als diese auf Pritunl aufmerksam wurde: Pritunl verspricht im Wesentlichen, die absolut perfekte VPN-Lösung für praktisch jede Lebenslage zu sein und in Sachen Funktionalität und Komfort selbst Open VPN zu übertreffen. Aber kann das Programm tatsächlich mehr? Lässt es sich so einfach installieren wie Open VPN? Und was hat es mit Pritunls Enterprise-Produkt auf sich, für das die Macher auf der Programm-Website [1] die Werbetrommel fleißig rühren?

Die Installation von Pritunl gestaltet sich einfach. Der Anbieter des Tools betreibt selbst Software-Repositories für die gängigen Distributionen, etwa die aktuelle Stable-Version von Debian oder die aktuelle LTS-Release von Ubuntu, die 14.04 LTS. Auch für RPM-basierte Systeme wie Centos 7 oder die aktuelle Fedora-Release haben die Autoren etwas übrig. Mit diesen Repositories ist die Installation nicht schwer: Die vorhandenen Anleitungen [2] zielen darauf ab, lediglich das Repository lokal zu aktivieren und anschließend mittels Paketverwaltung das Pritunl-Paket zu installieren.

Genau jene Installationsanleitungen sorgten aber auch für Irritation: Mit Pritunl zusammen gelangt nämlich zwangsläufig Mongo DB auf das System. Wozu braucht ein VPN-Server eine Datenbank? Wie sich herausstellt, nutzt Pritunl Mongo DB, um im Hintergrund seine eigenen Einstellungen abzuspeichern und zu verwalten. In Scale-out-Umgebungen mit mehreren Pritunl-Instanzen an mehreren Standorten tauschen sich die Server von Pritunl untereinander über ihre jeweilige Konfiguration aus, und zwar mittels Mongo DB. Das Konfigurationsbackend für eine solche Konstruktion ist dank der Datenbank leicht zu realisieren, besonders weil diese eigene Clusterfunktionalität mitbringt.

Insgesamt ist ein solches Konstrukt jedenfalls viel flexibler als statische Konfigurationsdateien. Die sucht man bei Pritunl vergeblich: Die Konfiguration hin zum Nutzer geschieht mittels einer eigens entwickelten Weboberfläche, die fester Bestandteil von Pritunl ist. Und die im Webinterface festgelegten Einstellungen landen direkt in Mongo DB. Nur eine einfache »pritunl.conf« existiert und legt fest, auf welchem Port die Weboberfläche erreichbar sein soll und wie Pritunl seine Mongo DB erreicht.

Direkt nach dem ersten Programmstart begrüßt Pritunl den Admin dann mit einem Wizard, der die grundlegende Konfiguration ermöglicht. Hier fragt das Tool etwa nach der Mongo DB, die es nutzen soll. Für Installationen auf Einzelservern sind die Standardwerte völlig ausreichend. Am Ende schreibt Pritunl sich eine eigene »pritunl.conf« auf Basis der gemachten Angaben. Insgesamt dauert das Pritunl-Setup keine fünf Minuten.

Nutzerverwaltung

Das Webinterface von Pritunl ist auch das Werkzeug, mit dem sich die Benutzerverwaltung der VPN-Lösung bearbeiten lässt. Ab Werk kommt Pritunl mit einer eigenen Userverwaltung daher, die nur lokal vorhanden ist. Daneben gibt es aber einen besonderen Clou: Pritunl unterstützt Single-Sign-on mittels des Authentifizierungssystems von Google.

Wer einen Google-Account hat, verfährt mit Pritunl wie mit der Anmeldung bei anderen Webdiensten über diesen Account: Beim Login-Fenster wählt der Nutzer aus, dass er sich per SSO bei Google ausweisen möchte. Im nächsten Schritt erlaubt er Pritunl, die Anmeldebestätigung von Google zu empfangen. Dann geht es bereits los: Der Nutzer gilt für Pritunl bei erfolgreicher Anmeldung mit Google ebenfalls als eingeloggt.

Weist ein Admin den angelegten Nutzer im Anschluss einer der “Organisationen” in Pritunl zu – dazu später mehr –, kommt die VPN-Verbindung zustande. So entfällt die lästige Pflege separater VPN-Zugangsdaten – allerdings nur, und das ist unschön, wenn man sich für die Enterprise Subscription entscheidet.

Nicht automatisch Server

Mit Hilfe des Webinterface lassen sich nicht nur Nutzer verwalten, sondern auch die zu startenden VPN-Instanzen. Ein installiertes und konfiguriertes Pritunl führt gerade nicht dazu, dass automatisch auch ein VPN-Server läuft wie bei Open VPN. Eine VPN-Verbindung muss der Admin stattdessen starten. Vorhandene Nutzer sortiert er in Organisationen ein (Abbildung 1), und für Organisationen lässt sich im Anschluss eine beliebige Zahl von Servern betreiben – in der Free Edition ist die Anzahl der VPN-Server pro Host allerdings auf einen beschränkt.

Abbildung 1: Pritunl denkt in den Kategorien Nutzer und Organisationen. Pro Pritunl-Instanz lassen sich von jeder Einheit mehrere verwalten.

Abbildung 1: Pritunl denkt in den Kategorien Nutzer und Organisationen. Pro Pritunl-Instanz lassen sich von jeder Einheit mehrere verwalten.

Verglichen mit Open VPN ist das äußerst komfortabel: Wer mehrere Open-VPN-Instanzen auf einem Host betreiben will, ist gezwungen sich um das Management der dafür nötigen Konfigurationsdateien selbst zu kümmern. Auch das gleichzeitige Starten mehrerer VPN-Verbindungen pro Host setzt Konfigurationsbastelei voraus. Pritunl versteckt den kompletten Konfigurationsaufwand hinter den Kulissen des Webinterface.

Hinzu kommt, dass einzelne VPN-Server auf der Interface-Ebene des Hosts ab Werk voneinander getrennt sind. Einerseits hat ein Unternehmen so die Option, mehrere VPN-Server für unterschiedliche Abteilungen zu betreuen. Andererseits hat der Betreiber einer Pritunl-Instanz die Sicherheit, dass mehrere Kunden auf dem Server untereinander ihren Traffic nicht sehen. In Sachen Sicherheit ist das eine absolute Selbstverständlichkeit.

Lokales VPN oder Cluster

Natürlich beherrscht Pritunl die grundsätzlichen Betriebsvarianten. So ist es möglich, den VPN-Server als simples Gateway zu verwenden, wenn typisches NAT aus irgendwelchen Gründen keine Option ist. Dabei wird die VPN-Verbindung zur Default-Route: Der gesamte Traffic vom Internet und zum Internet hin geht in solchen Fällen durch eine entsprechend verschlüsselte Verbindung in Pritunl. Dabei beherrscht die Lösung IPv4 ebenso wie IPv6.

Ein derartiges Gateway-Setup ist jedoch wenig spannend. Auch die typischen VPN-Setups sind für Pritunl kein Problem: Ein Nutzer, der mit Pritunl verbunden ist, kann über diese Verbindung alle Rechner im privaten Netz hinter dem Server erreichen. Wahlweise geht das per Tunnel oder als Bridge; der Unterschied ist lediglich, ob der VPN-Client direkt Teil des privaten Netzes wird oder Pritunl sichtbar als Vermittler zwischen den Netzen fungiert. Wieder gilt aber, dass für den technisch schöneren Bridge-Modus eine Enterprise-Lizenz nötig ist.

Beide Varianten des Setups bieten keinen nennenswerten Vorteil gegenüber Open VPN. Anders ist das mit der Möglichkeit, mehrere Pritunl-Server miteinander zu verbinden. Einerseits sehen sich dann die Rechner hinter beiden Servern mit Pritunl direkt, es entsteht quasi ein großes virtuelles Netzwerksegment. Andererseits sehen so auch die Clients, die sich mit den Servern verbinden, alle Clients in beiden Teilen des Netzwerks.

Praktisch ist diese Möglichkeit etwa für Unternehmen, die ihre Daten über mehrere Standorte verteilt haben. Über den VPN-Link kommunizieren in solchen Setups alle beteiligten Server und Clients miteinander. Diese Art des Setups setzt allerdings einen Mongo-DB-Cluster voraus. Die einzelnen Mongo-DB-Instanzen müssen also ihre Daten im Hintergrund selbstständig replizieren. Die Pritunl-Instanzen vor Ort verbinden sich jeweils mit “ihrer” Mongo DB.

Auf seiner Website wirbt Pritunl massiv mit der integrierten Unterstützung von Produkten der Firma Ubiquity. Unter dem Markennamen Edge Max vertreibt Ubiquity diverse Router und Switches im semiprofessionellen Segment. Pritunl kommt mit einem Edge-Max-Plugin daher, das direkt auf den Geräten zu installieren ist. Im Anschluss sprechen vorhandene Pritunl-Instanzen direkt mit den Edge-Max-Routern und konfigurieren diese anhand der Admin-Vorgaben. Hierzulande ist die genannte Hardware aber eher exotisch.

Skalieren und Verfügbarkeit

VPN-Server haben das Zeug zum Nadelöhr: Wenn sich Hunderte Nutzer gleichzeitig mit dem Dienst verbinden, gerät dieser schnell ins Schwitzen. Pritunl beugt diesem Problem dadurch vor, dass sich verschiedene VPN-Server in unterschiedlichen Pritunl-Instanzen auf mehreren Servern betreiben lassen. Wer mehr als einen VPN-Eintrittspunkt braucht, nutzt einfach mehrere Server.

Die Pritunl-Entwickler machen sich auch über das Thema Hochverfügbarkeit Gedanken. Die Infrastruktur dafür ist ohnehin vorhanden: Durch die Nutzung von Mongo DB und deren Clusterfunktionalität ist der Datenstand im Cluster für alle Server identisch. Ganz gleich, wie viele Pritunl-Instanzen aktiv sind und auf welcher Hardware diese sich befinden – jeder Cluster weiß stets, welche Partner er hat.

Das Thema HA geht Pritunl entsprechend effektiv an: Fällt eine Pritunl-Instanz innerhalb des Clusters aus, setzt Pritunl sie vollautomatisch auf ein anderes Stück Hardware. Dabei wandert sogar die IP-Adresse der VPN-Instanz mit.

Ganz unbemerkt vom Admin versteckt sich in Pritunl ein eigener Mini-DNS-Server. Der weist verbundenen Clients automatisch einen nicht-offiziellen DNS-Namen zu, unter dem der Client im VPN erreichbar ist. Der Nutzername folgt dem »Nutzer.Organisation.vpn« -Schema. DNS-Queries auf die ».vpn« -Domain fängt Pritunl entsprechend ab und beantwortet sie selbst.

Freie Software?

Eine Tatsache macht auf der Pritunl-Website stutzig: Der Teil der Seite, der den Pritunl-Client für verschiedene Betriebssysteme bewirbt, ist ausdrücklich mit “Open Source VPN” übertitelt. Beim Pritunl-Server – und der ist zweifelsohne die wichtigere Komponente – fehlt das Open-Source-Label. Ein Blick in die License-Datei des Servers bringt zu Tage, wieso die Pritunl-Autoren mit der Bezeichnung Open Source bei ihrem Server deutlich sparsamer umgehen.

Die Lizenz der Lösung listet nämlich diverse Dinge auf, die Pritunl-Nutzer nicht tun dürfen. Dazu gehört auch, den selbst modifizierten Pritunl-Quelltext an andere Nutzer weiterzugeben. Richard M. Stallman hätte spätestens hier Schaum vor dem Mund. Insgesamt ist die Lizenz des Pritunl-Servers allerdings ein Dokument, an dem auch weniger missionarische Freunde freier Software zu knabbern haben. Frei im Sinne der typischen FL/OSS-Definition ist der Pritunl-Server jedenfalls nicht. Ob das ein Problem ist, muss letztlich aber jeder Admin für sich allein überlegen.

Keine Probleme auf der Client-Seite

Dass Pritunl das Open-VPN-Protokoll spricht, wurde schon erwähnt. Da scheint es eigentlich überflüssig, spezielle Client-Tools für die gängigen Betriebssysteme anzubieten. Die Pritunl-Autoren machen das trotzdem. Der Pritunl-Server bietet nämlich die Möglichkeit, die vollständige Konfigurationsdatei für einzelne VPN-Nutzer auf Knopfdruck auszugeben. Der Pritunl-Client dient in diesem Fall als Gegenstück dazu: Empfängt ein Nutzer auf einem mobilen Gerät wie etwa auf einem Chromebook eine Pritunl-Konfiguration per Mail, dann kann er diese unmittelbar im Anschluss im Pritunl-Client öffnen und mit seinem VPN sofort loslegen. Der Pritunl-Server selbst organisiert dabei auch den Konfigurationsversand per E-Mail. Allerdings ist auch dafür eine relativ teure Enterprise Subscription Voraussetzung.

Die Liste der unterstützten Betriebssysteme auf der Client-Seite kann sich ohne Frage sehen lassen: Für alle Linux-Systeme, die den Server betreiben können, stehen im gleichen Repository auch die Pakete des Pritunl-Clients bereit. Ein eigener Installer für OS X bringt Pritunl auf Apple-Geräte, für Windows steht ebenfalls eine spezielle Installationsroutine bereit (Abbildung 2).

Abbildung 2: Kein Problem - für OS X existiert ein nativer Pritunl-Client, ebenso für Linux und Windows.

Abbildung 2: Kein Problem – für OS X existiert ein nativer Pritunl-Client, ebenso für Linux und Windows.

Weniger rosig sieht es mit Pritunl-Paketen für die Mobilbetriebssysteme Android oder I-OS aus – aber kein Problem: Hier hilft die Kompatibilität mit dem Open-VPN-Protokoll. Das Programm VPN Connect [3] etwa eignet sich hervorragend für Pritunl-Server-Verbindungen auf mobilen Geräten von Apple oder mit Googles Android (Abbildung 3).

Abbildung 3: Wer Android oder I-OS nutzt, weicht auf Open VPN Connect aus, das für beide mobilen Betriebssysteme verfügbar ist.

Abbildung 3: Wer Android oder I-OS nutzt, weicht auf Open VPN Connect aus, das für beide mobilen Betriebssysteme verfügbar ist.

Ein besonderes Faible beweisen die Entwickler wie schon erwähnt für Googles Chromebooks mit Chrome OS: Die Weboberfläche des Pritunl-Servers liefert auf Mausklick ein VPN-Profil, das mit Chrome OS kompatibel ist. Ein zusätzlicher Pritunl-Client ist damit im Grunde gar nicht mehr nötig, denn die Bordmittel von Chrome OS reichen aus.

Aus Sicht des Administrators lohnt es sich noch, das Configuration-Sync-Feature genauer zu begutachten. Damit ist es nämlich möglich, Änderungen in der Konfiguration einer VPN-Verbindung an sich verbindende Clients automatisch zu übertragen. Dazu benötigt der VPN-Client zwar den originalen Pritunl-Client, im Gegenzug muss er sich aber nicht mehr mit der händischen Konfiguration von VPN-Verbindungen herumärgern.

Das Pritunl-Preismodell

Pritunl bietet zwar sämtliche Software zum freien Download an. Doch damit sich alle Funktionen des VPN-Servers nutzen lassen, ist eine Subskription samt regelmäßiger Zahlung notwendig. Der Hersteller hat sich für ein Modell in drei Stufen entschieden:

  • Das Free-Programm kommt ohne Kosten daher, bietet im Wesentlichen aber keine der wirklich spannenden Funktionen. Multi-RZ-Setups etwa gehen nicht, viele Funktionen im Pritunl-Webinterface bleiben ausgegraut. Immerhin ist die Anzahl der gleichzeitig erlaubten Verbindungen hin zu Clients (also Nutzern und Geräten) nicht eingeschränkt.
  • Wer zehn US-Dollar monatlich übrig hat, bekommt die Premium Subscription: Sie enthält die Funktionalität der Free Edition und ermöglicht die Gateway-Links, bei denen VPN-Server Traffic aus einem lokalen Netz als Gateway an VPN-Clients durchreichen können. Der Download von VPN-Profilen für Chrome OS ist ebenfalls gegeben sowie die Fähigkeit des Servers, Details über seine Konfiguration per E-Mail an konfigurierte Nutzer zu versenden. Mehr eine Spielerei sind die zusätzlichen Themes für das Webinterface, die ebenfalls zu diesem Paket gehören.
  • Wirklich interessant ist die Enterprise-Variante: Sie enthält alle Features der niedrigeren Pakete und obendrein die wirklich praktischen Funktionen, etwa Site-to-Site-VPNs oder einen VPN-Bridge-Modus, bei dem ein VPN-Client zum direkten Bestandteil des lokalen Netzes wird. Mit 50 US-Dollar monatlich ist der Preis für Unternehmen wohl zu verschmerzen, für Privatanwender fällt er aber durchaus ins Gewicht. Auch die automatische Konfiguration von DNS-Namen für VPN-Clients ist in diesem Paket enthalten, ebenso wie die Single-Sign-on-Module für Google oder Duo Security. Hinzu kommt Support direkt von den Autoren per Live-Chat. Wer die Enterprise-Variante langfristig beziehen möchte, bekommt von den Pritunl-Autoren Rabatte im Rahmen von Long-Term-Verträgen versprochen.

Übrigens: Wer Pritunl ausprobieren möchte, muss das gar nicht sofort auf echtem Blech tun. Die Pritunl-Entwickler beschreiben in ihrer Dokumentation an gleich mehreren Stellen, wie sich die entsprechenden Funktionen auch im Rahmen von Amazons AWS-Cloud ausprobieren lassen. Passende Pakete von Pritunl für Amazons Linux hat der Anbieter ebenfalls im Angebot. Dem Testen steht also auch ohne extra Hardware nichts im Wege. Wer dabei die Enterprise-Funktionen ausprobieren möchte, bittet den Hersteller um eine entsprechende Eval-Lizenz.

Fazit: Tolle Funktionen mit fadem Beigeschmack

Pritunl hinterlässt im Test einen widersprüchlichen Eindruck. Auf Seiten der Technik bietet die Lösung viele innovative Ansätze und zahlreiche Funktionen, die mit Open VPN schlicht unmöglich sind. Die Nutzung von Single-Sign-on via Google oder des Sicherheitsdienstes Duo Security gehört genauso dazu wie die Möglichkeit von Setups, die mehrere Rechenzentren leicht konfigurierbar miteinander verbinden.

Die Weboberfläche erspart es dem Admin zudem, in verquasten Konfigurationsdateien lange nach einem spezifischen Feature zu suchen. Was der Pritunl-Server können soll, lässt sich stattdessen einfach per Mausklick anschalten. Client-seitig profitiert die Lösung davon, das Open-VPN-Protokoll zu nutzen. Selbst für Plattformen, auf denen kein eigener Pritunl-Client zur Verfügung steht, lässt sich über entsprechende Apps so eine VPN-Verbindung herstellen.

Einen schalen Beigeschmack hinterlässt hingegen das Preismodell, das sich der Hersteller ausgedacht hat. Bei der Bewertung tritt der Unterschied zwischen den privaten Nutzern und Unternehmenskunden klar hervor. Letzteren tun 50 Dollar pro Monat selten weh. Hinzu kommt, dass sich Pritunl deutlich schneller aufsetzen lässt als etwa ein Open-VPN- oder gar IPsec-Server.

Für Endanwender ist der genannte Preis aber vermutlich ein Problem. Denn die Enterprise-Funktionen sind nicht sinnvoll aufgeteilt: Die Single-Sign-on-Funktion beispielsweise werden regelmäßig auch private Anwender nutzen wollen, genauso wie den Modus, einen VPN-Client mittels Bridge an das lokale Netz anzuschließen. Hingegen sind zum Beispiel die Multi-RZ-Setups für solche Kunden völlig unnütz.

Eine etwas günstigere Enterprise-Subskription, die speziell auf Endanwender zugeschnitten ist, wäre also wünschenswert. Bleibt das Preismodell unverändert, werden Nutzer für den Heimgebrauch vermutlich auch in Zukunft eher zum echten Open VPN greifen, das kostenlos zu haben ist.

Schließlich bleibt noch die Frage nach der Lizenz: Wer sich bewusst für freie Software entscheiden will, bekommt beim Lesen der Pritunl-Lizenz vermutlich arge Bauchschmerzen.

Der Autor

Martin Gerhard Loschwitz arbeitet als Cloud Architect bei Sys Eleven. Er beschäftigt sich dort intensiv mit den Themen Open Stack, Distributed Storage und Puppet. Außerdem pflegt er in seiner Freizeit Pacemaker für Debian.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 4 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben