| Version 25 (modified by , 13 years ago) ( diff ) |
|---|
Proxies im Kepler-Netzwerk
Im Kepler-Netzwerk existieren zwei Squid Proxy-Server und der IPCop der Linuxmusterlösung. Ihre Aufgaben sind
- beschleunigen des Zugriffs auf Seiten außerhalb des Kepler-Netzwerkes (Web-Caching)
- authentifizieren der Nutzer, die auf Seiten außerhalb des Kepler-Netzwerkes zugreifen
- beschränken des Zugangs zu bestimmten Seiten.
WPAD
Damit die Browser die Proxies automatisch erkennen muss für das rote, grüne und graue Netz das WPAD-Verfahren aktiviert sein (Automatische Suche der Einstellungen), dann erkennt der Browser den Proxy automatisch, im blauen Netz (WLAN) ist der Proxy transparent, hier ist die Einstellung im Browser egal.
Die Browser erhalten diese Einstellung über die user.js-Datei, die wir zwangsweise verteilen. Man kann WPAD allerdings auch einfach in den Ubuntu-Systemeinstellungen aktivieren, dann wird der Proxy überall verwendet. Das Autodiscovery funktioniert dort irgendwie nicht, daher trägt man als WPAD-URL ein:
http://wpad.kg-fds.de/wpad.dat
PP Proxy im roten Netz
Im Lehrernetz muss der Proxy von BelWü verwendet werden:
http://129.143.4.2:8080
außer für die lokalen Adressen 10.16.* und die Kepler-Homepage. Verwendet man WPAD, wird das automatisch konfiguriert.
Proxies im grünen Netz
- ipFire.kg-fds.de / 10.32.1.254 / transparent für aufgenommene Clients
- proxys.kg-fds.de / 10.32.1.251 / nicht transparent für alle - mit Filterung
- proxyl.kg-fds.de / 10.32.1.250 / nicht transparent für Lehrer - ohne Beschränkung
Die Zugangskontrolle funktioniert über LDAP und wird dort(AdminLdap) beschrieben
Aus #250:
Wir haben im grünen Netz zwei automatische Verfahren, wie man ins Internet kommt. Welches Anwendung findet entscheidet sich danach, welchen DNS-Sever per DHCP mitgeteilt wurde:
- DNS: paedml.kg-fds.de (10.32.1.1)
WPAD: paedml.kg-fds.de
Gateway: ipfire.kg-fds.de (10.32.1.254, transparent, deshalb DIRECT)
liefert die folgende wpad.dat, da IPFire transparent ist:function FindProxyForURL(url, host) { return "DIRECT"; }IPcop-Webadmin: https://10.32.1.254:445
- DNS: 10.32.1.251 (GreenProxy)
WPAD: 10.32.1.251
Gateway: 10.32.1.251 (Nicht transparent, Squid auf Port 3128)
liefert folgende wpad.dat:function FindProxyForURL(url, host) { lurl = url.toLowerCase(); if ((lurl.substring(0, 5) == "http:") || (lurl.substring(0, 4) == "ftp:" ) || (lurl.substring(0, 6) == "https:")) if ((isPlainHostName(host) && !localHostOrDomainIs(host, "www")) || (dnsDomainIs(host, ".kg-fds.de") && !localHostOrDomainIs(host, "www.kg-fds .de")) || (host.substring(0, 6) == "10.32.")) return "DIRECT"; else if (localHostOrDomainIs(host, "www.kg-fds.de")) return "PROXY 10.32.1.253:3128"; else return "PROXY 10.32.1.251:3128"; else return "DIRECT"; }
In dieser wpad.dat werden alle Anfragen an die Domain kg-fds.de lokal beantwortet (ohne Proxy) lediglich www.kg-fds.de muss über den Proxy raus. Zusätzlich wäre das Netz 10.32.0.0 / 255.255.240.0 rauszunehmen.
Proxy an der Kommandozeile
Der folgende Aufruf sollte den Proxy an der Kommandozeile setzen:
export http_proxy=http://<username>:<password>@10.32.1.251:3128/ export https_proxy=https://<username>:<password>@10.32.1.251:3128/ export ftp_proxy=ftp://<username>:<password>@10.32.1.251:3128/
Werden username und password nicht angegeben, so werden sie im Terminal interaktiv abgefragt.
Update-Proxy auf 10.32.1.253
Auf 10.32.1.253 (ProxmoxS) läuft ein weiterer Squid. Dieser Proxy wird von den LTSP-Servern für Software-Updates benutzt (apt). Er kann ebenfalls auf der Kommandozeile gesetzt werden:
export http_proxy=http://10.32.1.253:3128/ export https_proxy=https://<10.32.1.253:3128/ export ftp_proxy=ftp://10.32.1.253:3128/
Nutzername und Passwort sind nicht nötig, der Proxy ist für alle Nutzer und Rechner frei erreichbar (aber er lässt eben nur Anfragen zu den Seiten durch, die für die Software-Updates nötig sind).
Adressen im Proxy freischalten
Adressen, die über den 253er Proxy ohne Authentifizierung zugänglich sein sollen, müssen in 10.32.1.253:/etc/squid/squid.conf eingetragen werden.
Das ist z.B. sinnvoll für
- die Adressen, auf die
aptzum Software-Update zugreift - den Kepler-Kalender von Herrn Hilbert
- die Kepler-Homepage (die ja extern liegt)
Danach muss Squid die Konfigurationsdatei neu einlesen (s.u.).
Squid-Konfigurationsdatei neu einlesen
squid -k reconfigure
teilt Squid mit, dass die Konfigurationsdatei neu eingelesen werden soll. Das ist nach jeder Änderung an der squid.conf nötig.
Adressbereiche von Domains herausfinden
ping URL
ergibt mal eine URL der Domain, damit kann man dann bei https://apps.db.ripe.net/search den Adressbereich herausfinden. Auch unter http://tcpiputils.com/ sind gute Ergebnisse erhältlich: Zunächst einen DNS-Lookup, die erhaltene IP dann bei WHOIS-Lookup abfragen.
Softwareupdates (APT) über den Proxy
Soll das Softwareupdate mit APT auf einem Rechner funktionieren, muss APT ebenfalls den Proxy kennen.
Eigentlich sollte es dazu genügen, in den Ubuntu-Systemeinstellungen unter "Netzwerk" "automatisch erkennen" einzustellen. Zumindest bei Ubuntu 12.04 klappt das aber nicht richtig. Dort muss man dem APT den Proxy nochmal von Hand mitteilen:
In die /etc/apt/apt.conf eintragen:
Acquire::http::proxy "http://proxy.kg-fds.de:8080
Der Name "proxy" wird im grünen und grauen Netz verschieden aufgelöst, damit sollte es mit diesem Eintrag in allen Netzen gehen. (Über blau müsste es aber ohne gehen, denn dort ist der Proxy transparent.)