Anforderungen
Von einem beliebigen Provider soll man in einem Webbrowser so arbeiten können, als kämen die Zugriffe aus dem Mitarbeiternetz der Arbeitsstelle. Typischerweise eine Aufgabe für einen VPN-Tunnel, der im Mitarbeiternetz terminiert ist. Der VPN-Tunnel hätte aber auch noch den Vorteil, dass sämtliche Protokolle durch den VPN-Tunnel geschleust werden. Es reicht aber grundsätzlich, dass der Webzugriff möglich (Port 80/HTTP).
Verwendete Software
- PUTTY SSH Client: dynamic tunneling feature basierend auf SOCKS-Proxy
- Junkbuster (HTTP -> SOCKS Proxy Konverter für die Verwendung von Opera)
- Opera Browser
Funktionsübersicht
Die SSH Verbindung ins Mitarbeiternetz bietet mit dem Dynamic Tunnel einen SOCKS-Proxy auf localhost:10800 an, durch den sich alle Verbindungen so durchschleusen lassen können, wobei diese dann ihren Ausgangspunkt im Mitarbeiternetz haben. Somit kann man mit jedem Browser, dar einen SOCKS-Proxy unterstützt (z.B. Firefox, MS IE) alle Verbindungen oder selektiv (man muss ev. explizit lokale Netze ausnehmen).
Im Falle von Opera fehlt jedoch auch bei der 9.x Version die SOCKS-Proxy-Unterstützung. Aber mit dem Internet Junkbuster kann man sich behelfen, da dieser "normal" http/https-Proxy-Verbindungen auf einen SOCKS-Proxy weiterleiten kann (selektiv). Nebenbei hat man auch so allerlei Privacy-Funktionen (sofern man diese will).
- Opera hat den HTTP und HTTPS auf den Junkbuster-Proxy umgeleitet localhost:8000
- Junkbuster leitet selektiv Domains mit den eingeschränkten Zugängen z.B. *.kom.tuwien.ac.at (siehe unten) auf localhost:10800 (den SOCKS-Proxy durch den SSH-Tunnel) weiter. Selektiv, damit nicht wirklich alle Verbindungen durch den "langsameren" Tunnel gehen.
- Da das Nameservice vom externen Provider stammt, sind eventuell interne Ziele per Namen nicht auflösbar. Unter Windows XP kann man solche Namen vom Pseudo-Hosts-File http://netplane.tuwien.ac.at/netinfo/hosts.tuwien bzw. von tron:/etc/hosts explizt in lokale hosts-File eintragen (siehe unten).
Sofern man Junkbuster nicht auch dazu verwenden möchte, Privacy-Funktionen zu erfüllen, muss man folgende Funktionen
in der Junkbuster-Konfiguration (siehe unten) deaktivieren:
- Cookies nicht blockieren (kann man auch nur selektiv zulassen): sonst funktionieren etliche Login-Mechanismen nicht mehr (MoinMoin?-Wiki, etc.) sowie sonstige Authentifikationsschemata mit Session-Charakter.
- User Agent Identifikation des verwendeten Browser zulassen (wird sonst auf den mittlerweile recht exotischen Wert "Mozilla/3.01Gold (Macintosh; I; 68K)" gesetzt!)
- Referer zulassen (wird sonst vollständig unterdrückt). Kann bei gewissen Authentifikationschemata als Voraussetzung dienen (wo mit Redirects gearbeitet wird ...).
Einschränkungen
Die Verwendung beschränkt sich auf die Protokolle HTTP und HTTPS (aus Opera-Sicht). Andere Ports/Protolle? wie z.B. 8080, 631 (IPP), 11111 (webmin), also alles jenseits von 80 und 443 werden also nicht über den Tunnel geleitet.
Konfiguration
- PUTTY SSH Client:
- Connection -> SSH -> Tunnels: Destination: 10800, (x) Dynamic
damit wird ein SOCKS-Proxy über localhost:10800 zugänglich, wo alle SOCKS-Verbindungen durch den SSH-Tunnel geleitet werden und beim eingeloggten Server ankommen (der dann seinerseits als Ausgangspunkt der Verbindungen agiert).
- Session -> Hostname: ... (ein Host im Mitarbeiternetz)
- Internet Junkbuster:
- Quelle: http://www.junkbuster.com/ijbwin.html
- Archiviert: C:\Archiv\Browser+Web\Installed ** Installationsquelle: C:\Archiv\Browser+Web\Installed\internetjunkbuster20\ijb20
- Installationsort: C:\Util\Junkbuster *** junkbstr.ini:
# JK: Logfile aktivieren
logfile junkbuster.log
# JK
forwardfile sforward.ini
# JK: nicht verfremden
user-agent .
# JK: durchreichen
referer .
# JK
hide-console
# JK (deaktiviert lasse, da zu viel Daten erzeugt werden ...)
#debug 1 # GPC = show each GET/POST/CONNECT request
# alle Zulassen
*
- sforward.ini: Alles via SOCKS proxy.tuwien.ac.at (http), sonst direkt, außer bei kom.tuwien und www.zid -> geht über PUTTY SOCKS-Tunnel einer tron/jkws-Verbindung! https geht immer direkt.
### SOCKS Proxy für TU SC Anschlüsse
* . socks proxy.tuwien.ac.at:1080
ac.at . . .
chello.at . . .
teleweb.at . . .
telekabel.at . . .
### SOCKS Proxy durch dyn. Tunnel von puTTY einer tron/jkws Verbindung
kom.tuwien.ac.at . socks localhost:10800
www.zid.tuwien.ac.at . socks localhost:10800
service.zid.tuwien.ac.at . socks localhost:10800
netplane.tuwien.ac.at . socks localhost:10800
telefonbuch.tuwien.ac.at . socks localhost:10800
noc.tuwien.ac.at . socks localhost:10800
- Autostart: Verknüpfung in C:\Dokumente und Einstellungen\All Users\Startmenü\Programme\Autostart erstellt.
- Opera Einstellungen:
Einstellungen->Netzwerk: Proxy
HTTP: localhost:8000
HTTPS: localhost:8000
- Lokale Hostnamenauflösung: in der Betriebssystemumgebung (Windows XP) interne Hostnamen bekannt machen: C:\windows\system32\drivers\etc\hosts
Alle Hosts aus /etc/hosts mit 192.168.7., 192.168.34. eintragen (wegen Hostnamen, die im Outside Nameservice nicht sichtbar sind ...) z.B. noc3.kom.tuwien.ac.at (KOMlog im Web), whitepages1.kom.tuwien.ac.at/a/ (PHPMyAdmin?).
Inklusive (nicht im externen Nameservice vorhanden):
128.131.34.31 frisko.kom.tuwien.ac.at
128.131.34.95 pxe.kom.tuwien.ac.at
und exklusive (solche, die sowohl im KOM als auch Service-Netz sind)
egrep -v netman-.\.kom\.tuwien\.ac\.at