Erstellen eines VPN-Kill-Switch mit SOCKS

722
user598527

Ich möchte den gesamten Datenverkehr für bestimmte Anwendungen (z. B. Firefox unterstützt SOCKS) über VPN leiten. Mein VPN-Dienstanbieter bietet Konfigurationseinstellungen (SOCKS-Host, Port) für das SOCKS5-Protokoll an. Wenn ich es richtig verstanden habe, bietet SOCKS5 "Authentifizierung, so dass nur autorisierte Benutzer auf einen Server zugreifen können", in diesem Fall mein VPN-Konto, und ist für diesen Zweck obligatorisch.

Ist es obligatorisch, auch einen verwandten DNS-Server zu verwenden (dieser VPN-Dienst hat einen eigenen DNS-Server, die Leistung ist jedoch möglicherweise nicht hoch), oder funktioniert diese Konfiguration mit einer beliebigen DNS-Adresse? Wird meine Internetverbindung abgebrochen, wenn die VPN-Verbindung ausfällt, der DNS-Server jedoch weiterhin erreichbar ist? Wie wäre es umgekehrt?

0

2 Antworten auf die Frage

1
Nathan.Eilisha Shiraini

Das Web-Browsing basiert auf zwei Hauptprotokollen: DNS und HTTP (S).

  • DNS wird verwendet, um einen Domainnamen (dh superuser.com) in eine IP-Adresse (dh 123.45.67.89) zu übersetzen.
  • HTTP transportiert tatsächlich die Webseiten und andere Daten.

Wenn Sie eine Verbindung herstellen https://superuser.com/, fragt Ihr Computer zuerst den DNS-Server nach der IP-Adresse superuser.com. Nehmen wir an, es antwortet 123.45.67.89. Ihr Computer fragt dann 123.45.67.89nach der Webseite unter https://superuser.com/.

Die Sache ist, Sie 123.45.67.89wissen nicht, mit welchem ​​DNS Sie Kontakt aufgenommen haben oder ob Sie überhaupt einen kontaktiert haben.


Wenn Sie einen SOCKS-Proxy verwenden, wird Ihr Computer jedes Mal, wenn Ihr Computer mit einem Server sprechen möchte, zunächst aufgefordert, die Nachricht weiterzuleiten. Herr SOCKS fragt zuerst beim DNS nach der IP-Adresse von superuser.comund danach wird er 123.45.67.89nach der Seite gefragt https://superuser.com/.

In der Heimkonfiguration ist die Standard-DNS die Internetbox, die ihre lokale IP-Adresse verwendet. Das bedeutet, dass Ihr SOCKS-Proxy (der sich nicht in Ihrem lokalen Netzwerk befindet) keine Verbindung herstellen kann. Sie müssen Ihr DNS für ein externes DNS ändern, müssen jedoch nicht ausdrücklich das von Ihrem SOCKS-Provider bereitgestellte verwenden (Sie können verwenden 8.8.8.8und 8.8.4.4sind kostenlose, von Google bereitgestellte DNSs).


Die Tatsache, dass der SOCKS-Server Ihren Datenverkehr weiterleitet, bedeutet offensichtlich, dass Sie bei einem Ausfall der SOCKS nur dann auf das Internet zugreifen können, wenn Sie die Proxy-Einstellungen deaktivieren.

Eine letzte Sache: Sie haben vielleicht bemerkt, dass ich in dieser Antwort nie "VPN" verwendet habe. Das liegt daran, dass SOCKS kein VPN-Protokoll ist.

Ist die Verwendung von SOCKS5 obligatorisch? user598527 vor 7 Jahren 0
Nicht unbedingt. Das hängt von Ihrem Dienstanbieter für das SOCKS-Proxying ab. Wenn Sie aufgefordert werden, SOCKS5 zu verwenden, müssen Sie dies tun, da sie erwarten, dass eingehende SOCKS-Anforderungen SOCKS5 verwenden. Tatsächlich bietet SOCKS5 mehr Funktionen und Sicherheit, daher ist es ohnehin besser. Nathan.Eilisha Shiraini vor 7 Jahren 1
0
Gote Guru

Ich kann nicht kommentieren, deshalb antworte ich hier.

Wie Nathan richtig gesagt hat, sind SOCKS und VPN verschiedene Dinge. Beide verfügen möglicherweise über eine eigene Authentifizierung (zumindest von SOCKS5). Die erste wird verwendet, um Layer-7-Protokolle (z. B. das Softwareprotokoll) zu proxy, während VPNs dazu dienen, zwei Punkte mit einem verschlüsselten virtuellen Netzwerkkabel zu verbinden (z. B. tunneln sie das "Netzwerk").

Sie können beides haben. Sie können http (s) über socks5 über vpn verwenden. Das ist bei Anonymisierungsdiensten nicht ungewöhnlich.

Der DNS-Dienst, der zum Konvertieren der vom Menschen lesbaren Namen in IP-Nummern erforderlich ist, kann erneut über VPN oder SOCKS getunnelt werden. Die einfachste VPN-Konfiguration tunnelt alles über das VPN, also auch den DNS-Verkehr. Ob Ihre DNS-Abfragen über die SOCKS gehen oder nicht, hängt vom Client ab. Sie können beispielsweise firefox anweisen, dns over socks zu verwenden, indem Sie network.proxy.socks_remote_dns unter about: config auf true setzen.

Wenn Sie keine DNS-Auflösungen über Socken übergeben, können Sie einen beliebigen Resolver verwenden, einschließlich Ihres Box-Resolvers.

Wenn Sie dieses Setup verwenden, um Anonymität zu erreichen (wofür ich empfehle, TOR zum Setup hinzuzufügen), möchten Sie möglicherweise nicht zulassen, dass DNS-Abfragen standardmäßig ausgeführt werden, da die Wahrscheinlichkeit gering ist, dass Sie von diesen verfolgt werden können Pakete (die Site-Namen, die Sie getroffen haben).