Proxykonfiguration: WPAD als Alternative
Wie verteile ich die Proxykonfiguraton in meinem Netzwerk per Gruppenrichtlinie?
Auf der einen Seite ist das per GPO eine elegante Lösung, der Nachteil aber ist:
Es setzt die Verwendung des Internet Explorer voraus da alternative Browser die
Konfiguration der InternetExplorer Wartung nicht verwenden.
Es gibt Ausnahmen, die auf die MS InternetOptionen zurückgreifen, aber die
meisten verwenden eine eigene.
Gerade Firefox wird immer häufiger verwendet und fühlt sich durch
Gruppenrichtlinien überhaupt nicht angesprochen. Ein weiteres Problem gerade bei
den "Mozilla-Artigen" ist, daß die Konfiguration nicht in der Registry erfolgt,
sondern in einer Textdatei (userprefs.js/prefs.js), deren Inhalt ich nicht mit
einem ADM Template oder einer anderen Werkzeug der Gruppenrichtlinien editieren
kann.
Die Probleme sind aber noch nicht zu Ende diskutiert. Wird der Proxy per
Gruppenrichtlinien übergeben so haben die Clients ein Problem, sobald sie das
Firmenumfeld verlassen und dann den Proxy nicht finden, da er nicht zur
Verfügung steht. Klassisches Problem für Aussendienstler mit ihren Notebooks.
Jetzt muss man diesen die Konfiguration der IE Optionen wieder gestatten, damit
es geht, aber das lästige Umschalten bleibt. Mal mit, mal ohne Proxy usw.
Da ich persönlich nichts von der CSE Internet Explorer-Wartung halte, da diese
schon desöfteren ein seltsames Verhalten an den Tag gelegt hat und ich
persönlich immer eine Lösung favorisiere, die OS oder Anwendung unabhängig ist,
möchte ich hier die Lösung für WPAD vorstellen.
Die Idee:
Der Browser wird auf "Automatische Suche der
Einstellungen" konfiguriert. Startet der Browser versucht er eine
Konfiguratonsdatei zu finden. Ist sie vorhanden, wird sie verwendet, ist sie
nicht vorhanden oder wird nicht gefunden, versucht er den direkten Weg ins
Internet. Was dann idR einen Gateway (Router) Eintrag in der IP Konfiguration
vorraussetzt.
Damit ist aber dann eine Lösung geschaffen worden, die Standort unabhängig ist,
egal ob in der Firma, oder im Hotel die Clients werden den Weg ins Internet ohne
Beutzereingriff finden.
Weiterer Vorteil ist wie gesagt, daß diese Funktion der automatischen Suche von
jedem Browser unterstützt wird.
1. Schritt:
Umstellung des Browsers auf "Automatische Suche der
Einstellungen"
Das kann per Internet Explorer Wartung -> Verbindungseinstellungen
passieren, oder mit einem eigenen ADM Template, oder oder oder.
Es ist wie immer nur ein Registry Wert der verteilt werden muss.
In der IEWartung kann ebenfalls die Konfigurationsdatei direkt angegeben werden.
Die schönere Lösung ist aber die Möglichkeit diesen Pfad per DHCP und DNS
bekannt zu geben.
Dem IE alleine würde die DHCP Lösung reichen, andere Browser wie Firefox
verwenden aber eine DNS Anfrage.
Grundsätzlich ist die Lösung über den DNS zu bevorzugen, da dieser mit jedem
Browser funktioniere sollte und nicht jeder DHCP im Einsatz hat.
2. Schritt
Erweiterung des DNS um einen CNAME Eintrag: wpad
Browser die nicht die Suche per DHCP unterstützen verwenden den DNS. Sie suchen
nach einem Ziel mit dem Namen wpad* auf dem die Datei
wpad.dat dann auch zu finden ist.
DNS -> ForwardLookup Zone -> Neuer CNAME: wpad dieser verweist auf "euerWebServer"
Wenn man sich mal den Netzwerkverkehr anschaut, dann macht der Browser eine
Anfrage (GET /wpad.dat HTTP/1.1) an den Host: wpad, bekommt eine Antwort (HTTP/1.1
200 OK (Content-Type: application/x-ns-proxy-autoconfig) und liest dann den
Inhalt der Datei.
3. Schritt
Man erstellt eine wpad.dat Datei und
hinterlegt sie auf einem Webserver, damit sie hinterher über
http://wpad/wpad.dat gefunden werden kann.
Als Beispiel in die Standardweb Seite eures IIS, dieser ist normalerweise unter
C:\inetpub\wwwroot zu finden.
Inhalt (minimal)
------- wpad.dat -------
function FindProxyForURL(url, host)
{
if (isPlainHostName(host) || dnsDomainIs(host, ".eureDOM.dom"))
return "DIRECT";
else
return "PROXY proxyserver.eureDOM.dom:3128; DIRECT";
}
Dieses Script macht nichts anderes als:
Ist das Ziel ein Rechner (host) aus der eigenen Domäne (.eureDOM.dom), dann wird
kein Proxy verwendet, sollte der Proxy nicht erreichbar sein, versucht er es
direkt.
4. Schritt (optional)
Konfiguration DHCP. WPAD ist eine eigene Option (252) im DHCP Server, die
noch nicht vorhanden ist und deswegen erstellt werden muss.
DHCP Server -> "rechte Maustaste" -> Vordefinierte Optionen einstellen ->
Hinzufügen
Name: WPAD
Datentyp: Zeichenfolge
Code: 252
Beschreibung: egal
Zeichenfolge: http://wpad/wpad.dat
Danach in den Bereichsoptionen an die Clients verteilen.
5. Schritt
entweder für den gesammten IIS: IIS Verwaltung -> Eigenschaften des Servers -> MIME-Typen ->
Hinzufügen:
oder nur für die WebSeite: IIS Verwaltung -> Eigenschaften deder Seite ->
HTTP-Header -> MIME-Typen ->
Hinzufügen:
MIME-Typ: application/x-ns-proxy-autoconfig
Erweiterung: .dat
Abgesehen von der noch minimalistischen wpad.dat Datei seit ihr damit fertig.
Weiterführende Links: Dokumentationen und Beispiele
"Automatische Proxykonfiguration über WPAD"
http://www.faq-o-matic.net/content/view/216/44/
"Automatic proxy HTTP server configuration in web browsers"
http://homepages.tesco.net/~J.deBoynePollard/FGA/web-browser-auto-proxy-configuration.html
"Navigator Proxy Auto-Config File Format"
http://wp.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html
"Web Proxy Autodiscovery Protocol"
http://de.wikipedia.org/wiki/Web_Proxy_Autodiscovery_Protocol
"Proxy Auto-Config"
http://de.wikipedia.org/wiki/Proxy_Auto-Config
WPAD - Proxy im Browser einstellen
http://www.msexchangefaq.de/verschiedenes/wpad.htm
(c) 2003 - heute,
Mark Heitbrink, weitere Informationen unter WebSite-Info\Copyright