Little Snitch und VPNs im Freewave-Netz nutzen

Das Titelbild zeigt die Logos von Freewave und Little Snitch

Wie vielleicht aus einem der vorigen Blogbeiträge bereits hervorgegangen ist, arbeitet der Großteil vom Freewave-Team auf Macs. Eines der Programme, die auf besagten Macs nicht fehlen dürfen, nennt sich treffend „Little Snitch” und entstammt der Wiener Softwareschmiede Objective Development.

Für diejenigen, die es nicht kennen: Little Snitch ist sozusagen eine inverse Firewall, mit der man überprüfen kann, welche Software sich wie wohin verbinden will um dies im Zweifels-, oder auch Regelfall, zu unterbinden. Ein großartiges Feature von Little Snitch 3, vor allem für MacBooks, sind die automatischen Profile, die Regelsets darstellen, welche sich je nach „betretenem” Netzwerk automatisch aktivieren.

In offenen Netzen, wie Freewave eines ist, stellt eine Verbindung zu einem VPN eine zusätzliche Schutzschicht gegen ungewollte Auf- und Eindringlinge dar. Wie man Little Snitch dazu bringt, im Freewave-Netz sämtlichen Applikationen erst bei einer aktiven VPN-Leitung zu erlauben, sich ins Internet zu verbinden, möchten wir hier erklären:

Voraussetzung

Wir gehen hier davon aus, dass bereits eine VPN-Verbindung in den Netzwerkeinstellungen eingerichtet wurde. Wichtig dabei ist, dass in den „Weiteren Optionen” dieser Verbindung der Punkt „Gesamten Verkehr über die VPN-Verbindung senden” aktiviert ist. (Natürlich gibt es neben der in OS X eingebauten Variante auch weitere VPN-Clients. Eventuell müssen die Regeln dafür leicht angepasst werden.)

Damit wir alles in Ruhe konfigurieren können, sollte der Netzwerkfilter von Little Snitch vorübergehend deaktiviert werden.

Neues Profil „Ohne VPN”

Der erste Schritt ist, in Little Snitch ein neues Profil namens „Ohne VPN” zu erstellen. (Der Name dient hier nur zur Veranschaulichung, natürlich ist er frei wählbar.) In diesem Profil müssen nun folgende Regeln erstellt werden:

Screenshot von Little Snitch mit allen Regeln des Ohne-VPN-Profils

Erläuterungen:

  • Zuerst verbieten wir prinzipiell sämtlichen System- und NutzerInnenprozessen jegliche Verbindungen (das Zahnrad symbolisiert das System als Prozesseigentümer). Die folgenden Regeln bilden Ausnahmen zu diesem Verbot.
  • Der Captive Network Assistant ist dafür verantwortlich, dass die Freewave-Willkommensseite automatisch angezeigt wird. Er darf sich zu den Domänen apple.com und freewave.at verbinden.
  • mDNSResponder brauchen wir, um diese Domänen in IP-Adressen auflösen zu können.
  • ocspd wird verwendet, um die Gültigkeit der verwendeten Verschlüsselungszertifikate zu überprüfen.
  • pppd und racoon werden für die Verbindung zum VPN benötigt. Wir haben die Regel auf die IP-Adresse unseres VPN-Servers beschränkt.
  • UserEventAgent wird offenbar von OS X ebenfalls benötigt um zu erkennen, dass es die Freewave-Willkommensseite gibt. Darf sich nach apple.com verbinden.

Normalerweise genügt es, den Prozessnamen im Regeleditor einzugeben, denn Little Snitch findet automatisch den richtigen Pfad. Nur der UserEventAgent wurde nicht gleich entdeckt; dieser befindet sich unter /usr/libexec/.

Diejenigen, die sich lieber mit dem Browser als über den Captive Network Assistant verbinden, können auf dessen Regel sowie die des UserEventAgents verzichten und stattdessen (oder auch zusätzlich) eine Regel für ihren Browser einrichten. Es genügt, wenn sich der Browser zur Domäne freewave.at verbinden darf.

Zeigt die Einstellungen von Little Snitch

Geht man nun in die Einstellungen von Little Snitch, wählt man dort unter „APW” die Option „Automatischen Profilwechsel aktivieren” aus und weist dem unbekannten Netzwerk das Profil „Ohne VPN” zu. Somit wird dieses Profil immer autmatisch aktiv, sobald man sich mit einem unbekannten Netz verbindet.

Neues Profil „Mit VPN”

Danach erstellen wir ein weiteres Profil namens „Mit VPN”. Hier kommen nun die Regeln rein, die man bei vertrauenswürdigen Verbindungen aktiviert haben möchte. Zu Testzwecken könnten wir hier Regeln erstellen, die allen Prozessen alle Verbindungen erlauben.

Lässt man das Profil leer, wird man dann nach dessen Aktivierung bei jeder ausgehenden Verbindung gefragt, ob man diese zulassen will. Das ist anfangs recht nervig, aber nach kurzer Zeit hat man ein schönes Regelset zusammen und auch ein Bild darüber, welche Applikation sich wohin verbinden möchte.

Engage!

Wir aktivieren nun den Netzwerkfilter wieder und somit automatisch das Profil „Ohne VPN” gleich dazu.

Eine OS X-Notification, die die automatische Verbindung zum Profil Ohne-VPN bestätigt

Nun sollte nichts mehr nach außen dringen. Wählen wir jetzt das WLAN „Freewave” aus, sollte automatisch die Freewave-Willkommensseite im erschienenen Captive Network Assistant gezeigt werden, wo wir auf „Verbinden” klicken. (Alternativ rufen wir im Browser, sofern diese Regel hinzugefügt wurde, connect.freewave.at auf, wo wir ebenfalls zur Willkommensseite weitergeleitet werden und uns dort verbinden können.)

Zeigt die Freewave-Willkommensseite im Captive Network Assistant mit der Möglichkeit sich ins Internet zu verbinden

Wir sind nun mit dem Internet verbunden, aber Little Snitch verhindert weiterhin brav jegliche Kommunikation nach außen und etwaige Bösewichte warten vergeblich auf abfangbare, unverschlüsselte Kommunikation. Nun verbinden wir uns mit dem konfigurierten VPN. Sobald diese Verbindung steht, weisen wir sie dem Profil „Mit VPN” zu. Achtung: Nicht das WLAN-Netz zuweisen, sondern die VPN-Verbindung.

Ab sofort wird also „Mit VPN” automatisch aktiviert, sobald man sich im entsprechenden VPN eingewählt hat.

Eine OS X-Notification, die die automatische Verbindung zum Profil Mit-VPN bestätigt

Man kann dem Profil „Mit VPN” übrigens zusätzlich das abgesicherte WLAN zu Hause zuweisen. Somit hat man nur ein Profil für alle vertrauenswürdigen Verbindungen.

Tipps, Tricks oder Anmerkungen? Gerne hier in den Kommentaren beziehungsweise auch auf TwitterFacebook oder Google+.

P.S.: Kleiner Tipp am Rande: Ebenfalls aus dem Hause Objective Development stammt „LaunchBar„, das Produktivitätstool für keyboardaffine Menschen. Wir stehen übrigens in keinerlei Beziehung zu Objective Development. Wir sind nur Fans. 🙂

Update

Alexander Kirk hat eine Anleitung geschrieben, wie man Little Snitch für eine SSH+SOCKS-Verbindung einrichten muss. Vielen Dank dafür!

2 Kommentare

  1. Hallo,

    ein älterer Post, aber auch Anfang 2017 so wertvoll wie eh und jeh. Gerade weil die Herangehensweise allgemeingültig ist, nicht auf freewave.at beschränkt.

    Ganz wichtig auch der Hinweis: „Lässt man das Profil leer, wird man dann nach dessen Aktivierung bei jeder ausgehenden Verbindung gefragt, ob man diese zulassen will. Das ist anfangs recht nervig, aber nach kurzer Zeit hat man ein schönes Regelset zusammen und auch ein Bild darüber, welche Applikation sich wohin verbinden möchte.“

    Ja, es nervt anfangs gewaltig. Gerade weil man nicht vielleicht sofort versteht, warum die eine oder andere Regel wichtig ist, ob man sie verbieten darf (vieles geht ja scheinbar erstmal trotzdem) oder ob damit ein Verlust an Vertraulichkeit verbunden ist, wenn sie zugelassen wird. Aber je mehr man sich damit beschäftigt, desto vertrauter wird einem Little Snitch, die Regeln und die Anwendungen. Und man erkennt dann auch einfacher, was man zulassen kann, soll und was besser nicht.

    Ich habe viele gute Tipps zu LS gelesen. Dabei geht es immer um ein schnelles Ergebnis. Aber so etwas ist immer nur die halbe Wahrheit, denn jede Installation sieht anders aus. Geduld ist der Schlüssel.

    Egal. Schon zuviel geschrieben. 🙂
    Wollte nur Danke sagen. 😉

    • 16.01.2017
    • 21:26
    • Wolf
  2. […] von der Anleitung von Freewave, die zeigt, wie man in einem unverschlüsselten WLAN (wie Freewave es an vielen Orten in ganz […]

Kommentar schreiben