Inhaltsverzeichnis
Automatische Proxy-Konfiguration
Falls ein Proxy-Server, wie z.B. Squid im Zusammenspiel mit einem Apache Webserver betrieben wird, ist es gerade bei mehreren Rechnern und Benutzer, sehr hilfreich und vereinfachend, eine automatische Proxy-Konfiguration an z.B. einen Browser wie den Mozilla Firefox zu verteilen.
Voraussetzungen
Folgende Voraussetzungen sind erforderlich, um wie hier beschrieben eine automatische Proxy-Konfiguration an z.B. einen Browser zu verteilen:
Konfiguration
Zuerst muss der Apache Webserver zur Verteilung einer automatischen Proxy-Konfiguration vorbereitet werden. Hierzu muss der MIME-Type eines sogenannten Proxy-PAC-Files / Proxy-PAC-Datei dem Apache Webserver mitgeteilt werden.
Dies geschieht über eine Konfiguration in der Konfigurationsdatei des Apache Webserver - /etc/httpd/conf/httpd.conf
. Folgende Zeile muss hinzugefügt werden:
AddType application/x-ns-proxy-autoconfig .pac
Zum Abschluss muss noch ein PAC-File / PAC-Datei erstellt werden. Diese muss im DocumentRoot
Verzeichnis oder noch viel besser wäre in einem virtuellen Host des Apache Webserver liegen und für diesen lesbar sein. Ein Beispiel für eine solche Datei könnte wie folgt aussehen:
// proxy pac file function FindProxyForURL(url, host) { // proxy string to return var proxy = "PROXY proxy.tachtler.net:3128"; // no Proxy if (shExpMatch(url, "http://127.0.0.1/*")) { return "DIRECT"; } if (shExpMatch(url, "http://localhost/*")) { return "DIRECT"; } if (shExpMatch(url, "http://tachtler.net/*")) { return "DIRECT"; } if (shExpMatch(url, "http://*.tachtler.net/*")) { return "DIRECT"; } // go Proxy return proxy; }
Abschließend ist es noch erforderlich einen Link in Form einer fiktiven HTML-Datei mit der Bezeichnung index.htm
auf die proxy.pac
-Datei zu setzen und die entsprechenden Rechte auf den Link zu ergänzen.
Mit folgendem Befehl wird ein Link mit dem Namen index.htm
auf die Proxy-PAC-Datei proxy.pac
gesetzt:
# ln -s proxy.pac index.htm
Der nachfolgende Befehl setzt die richtigen Rechte, damit der Apache Webserver den Link auch entsprechend lesen kann:
# chown -h root.apache index.htm
Starten des Webservers
Nach den Änderungen an der Konfiguration des Apache Webserver muss dieser neu gestartet werden. Dies kann über die folgenden Befehle durchgeführt werden:
# service httpd start
oder
# service httpd restart
Browserkonfiguration
Vorausgesetzt es wurde ein virtueller Host innerhalb des Apache Webserver definiert, welcher unter der Bezeichnung
- proxy.tachtler.net
erreichbar ist, und standardmäßig als DirectoryIndex
DirectoryIndex index.htm
als Einstellung definiert hat, wird die Einstellung z.B. im Browser wie den Mozilla Firefox wie folgt aussehen:
WPAD: DNS
Nachfolgend soll kurz dargestellt werden, wie eine Proxy-PAC-Datei mit Hilfe eines DNS-Eintrags ausgeliefert werden kann.
Zuerst sollte mit folgendem Befehl ein Link mit dem Namen wpad.dat
auf die Proxy-PAC-Datei proxy.pac
gesetzt:
# ln -s proxy.pac wpad.dat
Der nachfolgende Befehl setzt die richtigen Rechte, damit der Apache Webserver den Link auch entsprechend lesen kann:
# chown -h root.apache wpad.dat
Zusätzlich muss der Apache Webserver zur Verteilung einer automatischen Proxy-Konfiguration vorbereitet werden. Hierzu muss der MIME-Type eines sogenannten Proxy-PAC-Files / Proxy-PAC-Datei dem Apache Webserver mitgeteilt werden.
Dies kann über eine Konfiguration in der Konfigurationsdatei des Apache Webserver - /etc/httpd/conf/httpd.conf
, oder innerhlab eines VHOST's erfoglen. Folgende Zeile muss hinzugefügt werden:
AddType application/x-ns-proxy-autoconfig .dat
Anschließend muss mindestens nachfolgende Zeile in die Konfiguration für einen DNS-Server und der z.B. Zone tachtler.net
erfolgen (nur relevanter Ausschnitt):
... wpad.tachtler.net A 192.168.0.50 ...
WPAD: DHCP
WICHTIG - Alle Konfigurationsschritte wie in Automatische Proxy-Konfiguration - WPAD: DNS beschrieben MÜSSEN ebenfalls durchgeführt werden !!!
Nachfolgend werden nur die erforderlichen Konfiguration-Änderungen an dem DHCP-Server erläutert (nur relevante Ausschnitte):
Konfigurationen in der Section: GLOBAL des DHCP-Server (ISC BIND), wie hier ebenfalls beschrieben: DHCP ISC CentOS 6
... # ============================================================================== # WPAD-DAT file options. (Deliver Proxy-PAC-File) # ============================================================================== # Definition for option-252. option wpad-url code 252 = text; ...
Konfigurationen in der Section: Subnet des DHCP-Server (ISC BIND), wie hier ebenfalls beschrieben: DHCP ISC CentOS 6
...
option wpad-url "http://wpad.tachtler.net/proxy.pac ";
...
WICHTIG - Bitte ein <LEERZEICHEN> am Ende der Zeile VOR dem schließendem Hochkomma einfügen, da dies durch einige Browser benötigt wird !!!