Mar.19
Naar het web via een lokale proxy
Een website benaderen via de infrastructuur van de werkgever is meestal niet zo’n heel groot probleem. Bij de klant waar ik op dit moment werkzaam ben had ik tot voor kort echter een vervelend probleempje. Bij het opstarten van mijn browser maakt deze contact met de proxy server via NTLM autorisatie. Dat betekent in dit specifieke geval dat er niet alleen een username, password aan de proxy server moet worden doorgegeven maar ook een domein. Internet Explorer ondersteund NTLM dus dat is niet echt een probleem. Vervelend is wel, maar niet onoverkomelijk, dat elke keer bij het opstarten van de browser om een gebruikersnaam, wachtwoord en domeinnaam wordt gevraagd om met de proxy server te kunnen verbinden.
Nu bedacht ik mij onlangs dat RSS-feeds lezen toch wel heel handig zou zijn tijdens mijn werk. Er zijn echter nauwelijks RSS readers die NTLM autorisatie ondersteunen. De enige die ik kon vinden was Pluck die zichzelf integreerd in de browser. In Pluck is het mogelijk om bij de username ook een domein op te geven dus “domeinusername”. Persoonlijk vind ik de gebruikersinterface niet niet heel handig bovendien crashte hij al binnen 5 minuten. Tja, wat nu?
Een alerte collega attendeerde mij op de NTLM proxy van Dmitry Rozmanov. Dit is een in Python geschreven proxy server die lokaal draaien. Je hoeft er niet heel veel voor te doen. Python moet worden geinstalleerd en de NTLM proxy moeten worden neergezet en geconfigureerd. In het config bestand van de proxy kunnen de parent proxy gegevens worden ingevoerd en de poort waarop de lokale proxy moet draaien kan worden aangegeven. Daarna moet de browser gebruik gaan maken van deze nieuwe proxy om te zorgen dat het vervelende inlog scherm voor de proxy server verdwijnt. Vervolgens kan elke RSS reader gebruik gaan maken van deze nieuwe lokale proxy om feeds op te halen. Toepassingen zijn legio, zo kan bijvoorbeeld ook gebruik worden gemaakt van webservices etc…
Hieronder vindt je een stappenplan voor het installeren van de NTLM proxy in de bovengenoemde situatie.
@echo off
"C:Python24python.exe" main.py
Bij succesvol starten van de server zal er een console applicatie worden gestart met de informatie die ongeveer overeenkomt met onderstaande gegevens:
NTLM authorization Proxy Server v0.9.9.0.1
Copyright (C) 2001-2004 by Dmitry Rozmanov and others.
Now listening at MYPC on port 6080
Voila, je eigen lokale proxy is in de lucht, de autorisatie wordt automatisch geregeld. Alle applicaties met proxy ondersteuning kunnen nu het internet op. Let wel op dat de server.cfg niet in verkeerde handen valt aangezien daarin de proxy credentials zijn opgenomen.