Wie sollte ich VPN auf einem Mac verwenden, um Kompromisse zu vermeiden, bevor das VPN gestartet wird?

11

Wie die meisten erfahrenen Benutzer gehört haben, kann die Verwendung eines Mac in einem öffentlichen, nicht vertrauenswürdigen WLAN potenziell schädlich sein. Ein Tool wie Firesheep 1 hat es sehr einfach gemacht, unverschlüsselte Kommunikation abzufangen.

Die Verwendung eines vollständigen Tunnel-VPN zum Verschlüsseln der gesamten Kommunikation wird ebenso oft erwähnt wie eine magische Lösung für das Abhören, aber natürlich ist es nicht so einfach:

  • Je nach Protokoll und die Konfiguration der VPN - Verbindung kann die Verbindung fällt leichter. (zB TLS vs UDP)
  • Die VPN-Verbindung wird nicht sofort hergestellt, wenn Sie eine Verbindung zu einem öffentlichen Netzwerk herstellen.

Ich denke , dass die letzten beiden Punkte Rolle viel , weil , wenn die Netzwerkeinstellungen die verschiedenen Anwendungen sofort ändern , um ihre Server sprechen - ich nehme an, es ist , configddass sie informiert, nicht wahr?

dh bevor der VPN-Tunnel eingerichtet wird, kommunizieren die meisten (laufenden) Prozesse, die das Internet erfordern .

Ich sehe zwei Komponenten, um ein guter VPN-Benutzer zu sein:

  1. Stellen Sie sicher, dass die Dinge nicht klar gesendet werden, bevor sie eingerichtet sind.
  2. Stellen Sie sicher, dass die Daten später nicht gelöscht werden, wenn das VPN ausfällt .

Wie kann ich VPN auf einem Mac in einem öffentlichen Netzwerk verwenden, um den unverschlüsselten Datenverkehr vor dem Start des VPN einzuschränken?

Gentmatt
quelle
Es ist schön, dies noch einmal zu wiederholen - die ältere Frage, mit der ich verlinkt habe, scheint sich mehr darauf zu konzentrieren, wie man weiß, wann ein VPN die Verbindung trennt, als darauf, wie man sicher einrichtet -, damit wir von mehreren gezielten Fragen zu Praktiken zur Erhöhung der Sicherheit bei der Verwendung von a profitieren können VPN.
bmike

Antworten:

2

Lassen Sie uns jede Lösung beiseite legen, bei der Sie ein zweites Netzwerkgerät für das Problem bereitstellen. Lassen wir auch das Problem des Stoppens des Datenverkehrs, nachdem das VPN fehlgeschlagen ist, auf diese verwandte, aber andere Frage .

Ich betrachte dieses Problem als eine benutzerzentrierte Lösung und nicht als etwas, das durch Ändern des OS X-Verhaltens leicht zu erreichen ist.

Richten Sie zwei Konten auf Ihrem Mac ein (es müssen keine Administratorkonten sein, aber wenn dies der Fall ist, benötigen Sie kein drittes Konto, um die Systemeinstellungen zu ändern).

  1. Ein Shell-Konto, das vorhanden ist, um nichts auszuführen und nur die VPN-Verbindung herzustellen.
  2. Ein Hauptkonto, das die Programme ausführt, die Sie sicherstellen möchten, dass der Zugriff auf das Netzwerk erst erfolgt, wenn es ordnungsgemäß mit einem VPN gesichert wurde.

Wenn die schnelle Benutzerumschaltung aktiviert ist, können Sie sich vom Hauptkonto abmelden. Dadurch wird sichergestellt, dass keine Programme oder Prozesse dieses Benutzers im Hintergrund ausgeführt werden. Die meisten OS X-Apps verhalten sich gut und unterbrechen den Netzwerkzugriff, wenn kein aktives Fenster auf dem Bildschirm angezeigt wird. Sie müssen dies jedoch für immer überwachen und testen, um sicherzustellen, dass nichts passiert. Das Abmelden ist einfacher zu warten.

Jetzt können Sie auch "Konto" oben durch das Betriebssystem ersetzen und ein Virtualisierungssystem wie Fusion (oder Parallels oder ein anderes) ausführen und das Gastbetriebssystem erst starten, wenn das Hostbetriebssystem alles in einem VPN gesichert hat. Abhängig von der von Ihnen ausgewählten VM-Software haben Sie möglicherweise auch die Kontrolle über das Netzwerk und können den Zugriff auch dann aktivieren und deaktivieren, wenn das Gastbetriebssystem (oder die Gastbetriebssysteme) ausgeführt werden. Dies simuliert im Grunde die zusätzliche Hardware, von der ich ursprünglich sagte, dass ich sie nicht in Betracht ziehen würde.

Ich hoffe, dies zeigt, wie Sie auf Reisen und in einem Netzwerk, dem Sie nicht vertrauen, sicherer sein und gleichzeitig das Risiko minimieren können, das dies immer mit sich bringt. Wenn jemand anderes das Netzwerk besitzt - er besitzt DNS, kann Pakete protokollieren, Man-in-the-Middle-Angriffe (MITM) ausführen sowie alle Ihre Pakete gründlich untersuchen, um festzustellen, was im VPN-Tunnel fließt.

bmike
quelle
1
Dies ist eine ziemlich vernünftige Antwort. Die Verwendung einer VM in einem zweiten Benutzerkonto ist einfach einzurichten. Während das Betriebssystem möglicherweise noch ungesicherten Netzwerkverkehr zulässt, spielt es keine Rolle, ob es sich in der eingeschränkten Umgebung eines redundanten Benutzerkontos befindet.
Gentmatt
Ich wünschte, es gäbe eine einfache Schaltfläche, aber wie Sie sehen können, ist es nicht trivial, den Vor- oder Nachverkehr auf einer Kernel-Ebene zu steuern, da OS X so konzipiert ist, dass jeder Pfad verwendet wird, der aktiv ist. Das Betriebssystem ist nicht dafür ausgelegt, alles herunterzufahren, aber Netzwerkgeräte.
bmike
3

Hier ist ein Ansatz, der völlig außerhalb der MacOS X-Benutzeroberfläche liegt. Daher stört dieser Ansatz des Problems keine Netzwerk- oder VPN-Einstellungen.

Angenommen, ich möchte ein IPSEC-VPN verwenden (basierend auf der Verwendung von 500 / udp == isakmp & 50 / ip == esp).

Erstellen Sie eine ipfwKonfigurationsdatei, in der nur die erforderlichen Protokolle das VPN erstellen können :

/usr/bin/sudo cat <<____eof >/etc/ipfw.vpn.rules
# VPN trafic contention
#
# DHCP
add 00100 permit udp from any to any src-port bootpc dst-port bootps
# DNS
add 01000 permit udp from me to any dst-port domain
add 01010 permit udp from any to me dst-port domain
# isakmp
add 01050 permit udp from me to any dst-port isakmp
add 01060 permit udp from any to me dst-port isakmp
# esp
add 01100 permit esp from me to any
add 01110 permit esp from any to me
# all other ip go to the central black hole
add 20000 deny ip from any to any
____eof

Überprüfen Sie, ob die Syntax in Ordnung ist:

/usr/bin/sudo /sbin/ipfw -n /etc/ipfw.vpn.rules

Installieren Sie es im Kernel:

/usr/bin/sudo /sbin/ipfw /etc/ipfw.vpn.rules

Überprüfen Sie, ob Ihr Betriebssystem neu gestartet werden kann, und ermitteln Sie die IP-Adresse über das übliche DHCP. Überprüfen Sie, ob die meisten IP-Protokolle blockiert sind:

ping www.google.com

Wenn Sie ein VPN zusätzlich zu SSL verwenden möchten, müssen Sie diese Konfigurationsdatei natürlich anpassen (isakmp + esp → https).

Dan
quelle