Konfiguartion des Browsers auf der Clientseite
Zur Aktivierung unserer Proxy-Konfiguration haben wir zwei Möglichkeiten. Die scheinbar schnelle und einfache manuelle Variante, oder die vollautomatische zentrale Konfiguration. Mit der Letztgenannten ist man vor allem bei späteren Änderungen und Erweiterungen weitaus flexibler.
manuelle Konfiguartion
Im firefox aktivieren wir nun unter dem Menüpunkt Bearbeiten | Einstellungen bei Erweitert den Reiter Netzwerk. Bei den Einstellungen tragen wir nun die IP-Adresse unseres Proxyservers ein und geben als Port die 8080 an.
automatische Konfiguartion
Apache-Konfig
In der Konfigurationsdatei /etc/httpd/conf/httpd.conf ergänzen wir folgende Angabe:
vim /etc/httpd/conf/httpd.conf
# If the AddEncoding directives above are commented-out, then you
# probably should define those extensions to indicate media types:
#
# hinzugefügt am 16.08.2008 wegen Proxy-Pac-File-Unterstützung
AddType application/x-ns-proxy-autoconfig .pac
V-Host Definition
Für unsere Proxy-Konfiguration nutzen wir einen virtuellen Host, den wir wie folgt definieren:
- vhost.conf
# # proxy.nausch.org # <VirtualHost *:80> ServerAdmin webmaster@nausch.org ServerName proxy.nausch.org:80 ServerAlias proxy.nausch.org ServerPath / DocumentRoot "/usr/share/proxypac" <Directory "/usr/share/proxypac"> Options FollowSymLinks AllowOverride AuthConfig Order Deny,Allow Deny from all Allow from 127.0.0.1 Allow from 10.0.10.0/26 </Directory> DirectoryIndex index.html ErrorLog logs/proxy_error.log CustomLog logs/proxy_access.log combined </VirtualHost>
Abschließend starten wir dann unseren Webserver einmal durch:
# service httpd restart
proxy.pac file
Gemäß unserer V-Host-Definition legen wir nun das entsprechende Verzeichnis (DocumentRoot) an und setzen die Berechtigung für unseren Apache:
# mkdir /usr/share/proxypac # chown apache:apache /usr/share/proxypac
Hier erstellen wir nun unser proxy.pac-File
# vim proxy.pac
// proxy pac file function FindProxyForURL(url, host) { // proxy string to return var proxy = "PROXY proxy.nausch.org:8080"; // no Proxy if (shExpMatch(url, "http://*.nausch.org/*")) { return "DIRECT"; } if (shExpMatch(url, "http://*.wetterstation-pliening.info/*")) { return "DIRECT"; } if (shExpMatch(url, "http://localhost/*")) { return "DIRECT"; } if (shExpMatch(url, "http://127.0.0.1/*")) { return "DIRECT"; } // go Proxy return proxy; }
Abschließend verlinken wir nun noch unsere proxy.pac nach index.html
# ln -s /usr/share/proxypac/proxy.pac usr/share/proxypac/index.html
Clientseite
Auf Seiten unserer Clients ist lediglich bei den Browsereinstellungen die automatische Proxykonfiguration mit der URL http://proxy.nausch.org anzugeben.