Ich habe Zugriff auf ein VPN und möchte es nur für einige Anwendungen verwenden, nicht für alle.
Beispiel:
Wenn ich eine Verbindung zu einem VPN herstelle, sollen nur die Anwendungen Opera und Newsbin diese VPN-Verbindung verwenden. Alle anderen Anwendungen, wie z. B. Outlook, sollten die normale Internetverbindung verwenden (während das VPN verbunden / geöffnet ist).
Afaik das ist nicht möglich, aber ich bin nicht ganz sicher. Also deshalb meine Frage: ist es machbar?
networking
internet
vpn
privacy
dirkt
quelle
quelle
Antworten:
Nein, ist es nicht. Nun, nicht mit normalen Mitteln. Routing ist Routing. Das Routing wird weiter unten im OSI-Modell ausgeführt. Was Sie tun müssen, ist, dass es auf der Anwendungsebene (höher) erkennt, welches Programm Sie verwenden usw. NORMAL-Router erlauben es Ihnen nicht, Routen basierend auf Anwendungen oder Portnummern zu konfigurieren.
Ich denke aber, dass es möglich ist. Router können Ports sehen, sodass Sie sie nach Portnummer filtern und den Datenverkehr über verschiedene Routen senden können. Ich bin sicher, ich habe vor einiger Zeit etwas mit Cisco-Routern gelesen, die dies können. Sie sind jedoch nicht billig und es handelt sich um Business-Router, die viel Konfiguration erfordern, und ich nehme an, Sie möchten etwas Einfaches für den Heimgebrauch.
Zusammenfassend ist es der Router, der diese Funktion benötigt, und Ihre Standard-Router für den Heimgebrauch, selbst Unternehmen unterstützen diese Funktionen nicht. Nur die fortschrittlichen Produkte von Cisco und Sonicwalls bieten diese Funktionen.
quelle
Dies ist zumindest unter Linux möglich (und ich denke auch an BSD und OS X). Sie können dies tun, indem Sie:
Es gibt Skripte , um die obigen Schritte zum Erreichen hier oder es gibt einen anderen Führer hier .
Hier finden Sie eine detaillierte Anleitung zum Routing der Übertragung über ein VPN (mit einem VPN-Server, den Sie besitzen).
quelle
Sie können die Windows-Firewall verwenden, um dies zu erreichen (vorausgesetzt, Sie verwenden Win 7 oder Vista). Ich habe eine Anleitung dazu geschrieben
quelle
Sie können dies mit Netzwerk-Namespaces unter GNU / Linux tun.
So führen Sie OpenVPN und eine einzelne Anwendung in einem separaten Namespace aus:
Erstellen Sie den Net Network Namespace:
Starten Sie das Loopback-Interface im Namespace (sonst funktionieren viele Dinge nicht wie erwartet ...)
Erstellen Sie virtuelle Netzwerkschnittstellen, über die OpenVPN (im Namespace) auf das reale Netzwerk zugreifen kann, und konfigurieren Sie die Schnittstelle im Namespace (vpn1), um die Schnittstelle außerhalb des Namespace (vpn0) als Standardgateway zu verwenden
Aktivieren Sie IPv4-Routing und NAT für die Schnittstelle im Namespace. Da es sich bei meiner Standardschnittstelle um eine drahtlose Schnittstelle handelt, verwende ich in iptables für die ausgehende Schnittstelle wl + (das möglicherweise mit wlan0, wlp3s0 usw. übereinstimmt). Wenn Sie eine kabelgebundene Schnittstelle verwenden, sollten Sie wahrscheinlich en + (oder br + für eine überbrückte Schnittstelle) verwenden.
Konfigurieren Sie den Nameserver für die Verwendung im Namespace
Fast fertig, jetzt sollten wir vollen Netzwerkzugriff im Namespace haben
Starten Sie schließlich OpenVPN im Namespace
Sobald sich tun0 im Namespace befindet, können Sie das gewünschte Programm starten!
QUELLE Artikel.
Außerdem gibt es im Quellartikel ein Wrapper-Skript, das Sie an Ihre Bedürfnisse anpassen können.
quelle
Ich habe das unter Windows gemacht. Die Idee ist, die ausgehenden Netzwerkpakete an die VPN-Schnittstelle zu binden. Die Leute schlagen ForceBindIP dafür vor, aber dank dieser Antwort habe ich eine Idee, einen Proxy zu verwenden. Der Nachteil dieser Methode ist, dass entweder Ihre Apps Proxy-Unterstützung haben müssen oder Sie einen Proxifier verwenden müssen (siehe hier und hier ). Der Vorteil ist, dass Sie auf diese Weise die Verwendung von VPN im Browser mithilfe von FoxyProxy oder ähnlichen Add-Ons auf bestimmte Domänen beschränken können.
Ich verwende 3proxy im SOCKS-Modus und binde seine externe Schnittstelle an die IP des VPN. OpenVPN wird für die VPN-Verbindung verwendet.
In meiner .ovpn-Datei (
client
,dev tun
) habe ich folgende Zeilen hinzugefügt:route-nopull
um vom Server übertragene Routen zu ignorieren. In Ihrem Fall müssen Sie stattdessen möglicherweise das Redirect-Gateway auskommentieren.route
Um eine Route für diese Schnittstelle hinzuzufügen, wird sie ohne diese Zeile nicht verwendet, auch wenn die App daran gebunden ist.pull-filter
um Push-DNS beizubehalten, die andernfallsroute-nopull
zusammen mit den Push-Routen gelöscht werden . Diese Option wird ab OpenVPN 2.4 unterstützt. Wenn Sie sich an OpenVPN 2.3 (neueste Version für Windows XP) halten müssen, müssen Siedhcp-option DNS x.x.x.x
stattdessen zwei Zeilen mit fest codierten IP-Adressen hinzufügen .script-security 2
Scripting zu ermöglichen.up
Skript:down
Skript:Nachdem Sie mit dieser Konfiguration eine VPN-Verbindung
3proxy.exe
hergestellt haben, wird der Prozess gestartet und auf dem1080
Port wird ein SOCKS5-Proxy mit lokaler Host-Beschränkung und DNS-Auflösung ausgeführt. Konfigurieren Sie nun Ihre App für die Verwendung vonlocalhost:1080
SOCKS-Proxy.quelle
Options error: option 'route' cannot be used in this context ([PUSH-OPTIONS])
undOptions error: option 'redirect-gateway' cannot be used in this context ([PUSH-OPTIONS])
. Trotzdem funktioniert diese Lösung. Wenn Sie die Apostrophe für das Abwärts- und Aufwärtsskript überspringen, verwenden Sie doppeltec:\\path\\to\\script
Wenn Sie unter Linux arbeiten und openVPN verwenden, funktioniert VPNShift hervorragend .
quelle
Greifen Sie einfach über eine virtuelle Maschine auf das VPN zu.
Verwenden Sie die 'ausgewählten' Anwendungen von der VM, anstatt sie vom Hostcomputer zu verwenden.
PS Sie müssen der VM natürlich über den Host-Computer Netzwerkzugriff gewähren.
quelle
Ich weiß, dass dies eine viel zu späte Antwort ist, auf die ich gerade gestoßen bin, aber für den Fall, dass sie für jemanden relevant ist, hatte ich den gleichen Umstand, in dem ich meinen Arbeitsverkehr über das VPN ausführen wollte, aber nicht wollte, dass mein persönlicher Verkehr über das VPN geleitet wird Proxy-Server und so weiter. Also habe ich damals Win7 ausgeführt, aber sie haben immer noch WinXP auf vielen ihrer Systeme ausgeführt. Irgendwann gab man mir nur noch einen zweiten PC für die Arbeit, wodurch das Problem behoben wurde (eine Switchbox, die an beide PCs angeschlossen war, konnte einfach hin und her springen), aber vorher ließ ich ein virtuelles XP laufen, das ich als mein Arbeitsbetriebssystem eingerichtet hatte. Ich würde ein VPN von der besagten VM einbauen, um eine Verbindung zur Arbeit herzustellen, wodurch mein persönlicher Betriebssystemverkehr frei von Arbeitsbeschränkungen und Spionage wäre.
quelle