Letzten stand ich mal wieder vor einem kleinen Problem. Meine Frau wollte eine Serie auf einer Streamingseite schauen, welche es auf derer deutsche Version jedoch nicht gab.
In einem anderen Teil der Welt war man dort jedoch schon viel weiter. Klar aus Deutschland war diese Seite dank Geoblocking nicht zu erreichen. Das sollte jedoch keine große Hürde darstellen. Die wichtigere Frage war jedoch wie man das ganze Clientseitig am benutzerfreundlichsten umsetzt. Einen günstigen VServer in der Region habe ich schnell bestellt. Der war auch noch günstiger als jeder VPN anbieter.
Ich wollte jedoch jegliche separate Client Software vermeiden. Ein eigenes VPN fällt also flach, oft genug kann man einen VPN Server auch garnicht auf billig VServern umsetzen.
Mein nächster Gedanke war einen Socks Proxy mittels Dante aufzusetzen. Die Tatsache das dort jedoch Logindaten im Klartext über die Leitung gehen (in Zeiten von großflächiger TLS Nutzung) gab mir kein gutes Gefühl.
Ein anderer Ansatz war einen dynamischen SSH Tunnel zu nutzen. SSH ist auf jedem VServer verfügbar, abgesichert mittel PubKey Auth extrem sicher und sehr schnell eingerichtet. Jetzt musste ich nur einen Weg finden den Client (z.B. Putty) auf dem Client zu vermeiden. Ich wollte halt nicht das meine Frau erst einen SSH Tunnel starten muss um dann los surfen zu können.
Man benötigt nur einen Linux Server im Netzwerk und AutoSSH, schon kann ein Browser via Proxy Einstellungen auf den Socks5 Server des SSH Client zugreifen.
Na gut was ist also zu tun, als erstes solltet Ihr euren SSH Server auf eurem VPS absichern, wie das geht könnt ihr hier nachlesen: VServer aufsetzen Teil 1: OpenSSH Publickey Auth
Nun installiert ihr auf euren Server im LAN Autossh und erstellt eine SSH Config
Diese erleichtert euch die Arbeit mit Autossh erheblich.
So ungefähr sollte eure SSH config aussehen.
https://gist.github.com/bjoerns1983/961a48bda3d82beb5c9d17475b1704ab
Mit folgendem Befehl könnt Ihr nun diese Verbindung via Autossh aufbauen und kontrollieren lassen.
autossh -M 0 -f -T -N vps
In eurem Client (z.B. Browser) könnt Ihr nun die IP eures LAN Server und der Port als Socks5 Proxy anlegen und schon surft Ihr über euren VPS. DNS abfragen etc. laufen jedoch immer noch an eurem VPS vorbei.
Viel Spass beim nachmachen.
Eine coole Idee! Danke für den Tipp.