Puppet-Einstellungen zur automatischen Proxy-Konfiguration (WPAD)
WPAD macht es möglich, dass der LD-Server den Clients im pädagogischen Netzwerk automatisch eine dynamische Web-Proxy Konfiguration mitteilt. Dies funktioniert sowohl an festen Clients als auch an privaten Geräten der Benutzer (BYOD).
Über die WPAD-Konfigurationsdatei entscheiden alle gängigen Browser, ob und über welchen Proxy-Server die Verbindung zur Zieladresse hergestellt werden muss. Hierzu bietet LogoDIDACT seit Puppet-Version 1.4.x einige Einstellmöglichkeiten, die nachfolgend beschrieben werden.
Alle Konfigurationen finden in der YAML-Datei /etc/logodidact/hiera/custom.d/ldhost.yaml im Puppeteer statt.
Darin können seit Puppet-Version 1.4 folgende drei Einstellungen konfiguriert werden:
Use Proxy
Hier wird festgelegt, ob der Server generell als WebProxy verwendet werden soll. Mit den Parametern true/false wird das entsprechend festgelegt.
Direct Domains
- "www.beispiel.de"
- "www.beispiel.com"
Mit dem Parameter Direct Domains kann festgelegt werden, welche Seiten explizit ohne Proxy vom Client aus angesteuert werden sollen. Bei Eintragung in die YAML-Datei ist es wichtig, sich am Beispiel zu orientieren, falls mehrere Zieladressen als Proxy-Ausnahme definiert werden sollen. Auch auf die Einrückung muss pro Zeile geachtet werden (diese muss identisch zum restlichen Inhalt der Datei gewählt werden, z.B. 2 Leerzeichen). Der Vorteil dieser Variante ist, dass Einträge über das Kommando git commit wie sonstige Optionen im Puppeteer eingespeichert werden müssen und dadurch in der git log Historie des Verzeichnisses /etc/logodidact/ nachvollziehbar bleiben.
Use NoProxySites
Bei Aktivierung wird der Proxy für ausgewählte Zieladressen am Client ausgelassen. Diese Einstellung ähnelt dem vorherigem Parameter, die Liste der Proxy-Ausnahmen wird in diesem Falle jedoch ergänzend aus der Datei /etc/logodidact/Internet.conf im Container logosrv geladen. Die Liste setzt sich dynamisch aus dem Parameter "NoProxySites" und den darin befindlichen Einträgen zusammen, so wie in der internet.conf definiert. Statt eine solche Liste direkt im Puppeter zu pflegen, wird in dieser Variante also am Git-System im Puppeteer vorbei gearbeitet.
Direct Clients
- 10.16.214.1/255.255.255.255
Hier ist ein ähnliches Verhalten, wie beim Abschnitt "Direct Domains". Anstatt eine Domain, wird die IP eines Client hinterlegt, welcher den Proxy umgeht. Bei Eintragung in die YAML-Datei ist es wichtig, sich am Beispiel zu orientieren. Wie zu erkennen ist, muss die Ausnahme inkl. Netzmaske definiert werden. Dies ist zwingend zu beachten, da sonst die Anpassung nicht greift.
Sollten die Einstellungen vorgenommen oder später geändert worden sein, muss im ldhost noch ein prun zur Aktivierung ausgeführt werden.