Tunneln von Tor + Privoxy
Mein Internetzugang über den Virtuellen Campus Graz (VCG) stinkt dank der Einführung eines Intrustion Prevention Systems (IPS) von McAfee seitens der TU Graz ohne Ende. Nicht nur diverse Ports, sondern auch jeglicher Bittorrent-Traffic und sogar das Tor-Netzwerk werden gefiltert. Das betrifft übrigens nicht nur den VCG, sondern (teilweise) auch die TU Graz als Ganzes. Man bekommt nicht mal ein sauberes Reject, sondern lauft einfach in ein Timeout… gnaaaaah
Ich verwende schon seit Jahren diverse Tunnel um meine Infrastruktur möglichst kontrollierbar zu halten. Das inkludiert u.a. mein Mailsetup (bei dem ich mich nicht auf den Mailserver der TU Graz verlassen möchte). Da verwende ich mutt mit msmtp über einen SSH-Tunnel zu meinem Mailserver:
% grep sendmail ~/.mutt/settings set sendmail="/usr/bin/msmtp" % cat ~/.msmtprc [...] host localhost port 9999
Und mit einem:
ssh -l mika -L 9999:$SERVER:25 $SERVER -N -f
steht dann der Tunnel fürs Mailen.
So, aber jetzt zurück zum Thema: ich brauch manchmal das Tor-/Privoxy-Setup. Was also machen? Ebenfalls tunneln halt. Dazu setze ich Privoxy und Tor auf $SERVER auf. /etc/privoxy/config sieht dabei wie folgt aus:
listen-address $SERVER_IP:8118 permit-access $CLIENT_IP # allow connections from client permit-access $SERVER_IP # allow connections from server itself too (if wanted) forward-socks4a / 127.0.0.1:9050 .
Jetzt fehlt nur noch der Tunnel (ich stelle mit den Control*-Optionen sicher, dass nicht versehentlich ein existierender Connection-Socket genommen wird und der Tunnel dann nicht korrekt aufgebaut wird):
ssh -o "ControlMaster=no" -o "ControlPath=/dev/null" -l mika -L 1234:$SERVER_IP:8118 $SERVER_IP -N -f
HTTP_PROXY zeigt dann auf dem Client ($CLIENT_IP) auf http://localhost:1234/ und schon geht es dahin. Eklig? Ja, aber als Workaround für ein ekliges Netz tut es. Als nächsten Schritt möchte ich mir dann einmal das Tunneln von Bittorrent ansehen. (Empfehlungen in diese Richtung sind natürlich willkommen.)
June 12th, 2007 at 16:18
Also ich wuerd das nicht so umstanedlich mit ssh port forwarding machen, wuerd eher das ssh “vpn” feature nutzen, sollt in allen neuen versionen benutzbar sein, google is your friend, dann sollt torrent auch wieder gehen, aber leider geht der traffic wo anders rueber, aber naja wenigstens was ;)
have phun
axp
June 12th, 2007 at 16:33
@baboo: Stimmt, das wollt ich mir eh mal genauer anschauen, danke für den Hint. Für meine aktuellen Zwecke passt der spezielle Tunnel wie oben beschrieben insofern besser, als dass der Eingriff in das Netzwerk-Setup nicht ganz so stark ist.
mfg,
-mika-
June 12th, 2007 at 16:42
ach du scheisse, das ist ja wirklich eine blöde situation. ist sie wenigstens kostenlos? :)
June 12th, 2007 at 16:58
@nion: ja klar, ist “Teil des Studentenheims”. War lange Zeit OK, aber in den letzten Monaten hat es sicher nur mehr verschlimmbessert… Wenn ich eine reelle Option für eine andere Connectivity hätte, wäre ich ja schon längst bei einem anderen Anbieter….
June 13th, 2007 at 08:20
SSH vpn Dingsda ist mir auch zu neumodisch, aber ich schreib’ die ganzen Parameter und Forwards mittlerweile in meine .ssh/config, dann kann man mit einem einfachen ssh host alles so haben, wie man will (und ein Host muss nicht ein DNS-Host sein, dafür gibts die HostName-Option).
June 13th, 2007 at 08:58
@Thomas: jupp, mach ich auch so. Dank “Host *” kann man bestimmte Sachen auch gleich für alle SSH-Verbindungen übernehmen. :)
June 16th, 2007 at 13:18
@nion Die machen das bei DSL Verbindungen die über die Uni laufen auch so, und die kosten was und zwar gar nicht so wenig. Ich bin, glaube ich, eh der letzte Idiot der das noch verwendet. Nicht mehr lang allerdings…
June 20th, 2007 at 01:37
Hi Mika,
SSH Tunnel sind bei mir auch eine einfach und schnelle Möglichkeit zu tunneln, aber wenn du solche Restriktionen hast und sowie so einen “externen” Server zur Verfügung hast, dann benutze doch einfach openVPN und tunnel einfach “alles” über deinen Server.
Grüße
Claus
June 20th, 2007 at 08:53
@claus: ja, das werd ich wohl auch machen, aber das ist halt ein größerer Eingriff in das Netzwerk-Setup und deswegen suche ich durchaus auch immer die Möglichkeit für selektive Tunnelsetups. :)