L i n u x - S c h u l e
|
|
Homepage | Server | Linux-Clients | Win9x-Clients | WinNT-Clients | Win3.11-Clients | Dos-Clients | Utilities |
Was es ist
Wenn mehrere Räume an Arktur angeschloßen sind, ist es manchmal wünschenswert, einzelne Räume vom Internetzugang auszuschließen, ohne dass der Zugriff auf die anderen Netzdienste unterbrochen wird.
Dazu werden durch eine Zugriffskontrollliste (ACL) des Proxy Servers Squid Netzwerksegmente (192.168.x.y) definiert, denen kein Zugriff auf den Proxy gestattet ist. Weil in der Regel die Netzwerksegmente den einzelnen Computerräumen entsprechen, kann der unterrichtende Lehrer den Zugriff aufs Internet für seinen Raum gezielt sperren oder freigeben.Daneben ist es natürlich auch möglich, den Aufruf in einen cron-job zu packen, um z.B. für unbeaufsichtigte Arbeitsplätze den Zugriff aufs Netz gezielt freizugeben oder zu sperren.
Was man braucht
Klaus Werner hat einen Satz von Dateien zusammengestellt, mit denen der Zugriffskontrollmechanismus von Squid gesteuert werden kann.
Dazu sind die folgenden Dateien nötig:
- /etc/allowed_clients.httpd
- /home/www/admin/netswitch.cgi
- /home/www/admin/donetswitch.cgi
- /usr/sbin/httpswitch
Daneben sind Änderungen in folgenden Dateien nötig:
- /etc/sudoers
- /etc/squid/squid.conf
- /etc/squid/squid.conf.in
ACHTUNG Weil diese Dateien je nach Zustand der Systemeinrichtung anders aussehen, sind diese Dateien mit der Erweiterung "-httpswitch" im Downloadpaket enthalten, sie müssen von Hand angepasst werden.
Was man anpassen muß
Safety first: von allen Dateien, die man ändert, sollten vorher Sicherungskopien angelegt werden! Wer keine anderen Änderungen in der Squid Konfiguration vorgenommen hat, kann die mitgelieferten Dateien für in /etc/squid übernehmen. Wer z.B. bereits die Änderungen nach Joachim Deckers vorgenommen hat, muß natürlich Hand anlegen.
/etc/squid.conf und /etc/squid.conf.in
Die Datei /etc/squid.conf.in wird beim Verbindungsaufbau nach /etc/squid.conf kopiert, man sollte also am besten die /etc/squid.conf.in ändern und nach /etc/squid.conf kopieren. Die Änderungen betreffen die Zugriffskontrolle, sind also im Abschnitt 7 "Zugriffskontrolle" zu machen.
Unterhalb von acl verboten url_regex "/etc/squid/schmuddel" fügt man ein:
Unterhalb von http_access_deny verboten fügt man ein:acl allowed_clients src "/etc/allowed_clients.httpd"
Das ! stellt ein logisches NEIN dar, es werden also alle Clients ausgeschlossen, die nicht in /etc/allowed_clients.httpd aufgeführt sind.http_access_deny !allowed_clients
/etc/sudoers
In /etc/sudoers sind Zuordnungen von Befehlen und Personen abgelegt, die mit Root-Rechten ausgeführt werden. Ähnlich wie bei der crontab gibt es auch hier einen besonderen Befehl zum Editieren: visudo. Zur Arbeitserleichterung sollte man sich vorher seinen Lieblingseditor mit export EDITOR=/usr/bin/joe einstellen.
Dort sind im oberen Teil folgende Zeilen zu ergänzen:und im unteren Teil:Cmnd_Alias HTTPSWITCH=/usr/sbin/httpswitchDamit haben alle Lehrer das Recht, die Raumabschaltung zu veranlassen.%lehrer ALL=PASS,HTTPSWITCH
/home/www/admin2/admin1.cgi
In dieser Datei ist das abgelegt, was man im unteren Teil des Browserfensters vom OnlineInterface sieht. Hier kann man unter der letzten </tr> Anweisung eine weitere Tabellenzeile mit dem Link auf netswitch.cgi unterbringen.
<tr> <td align=center colspan=2> <font color="#800000"> nur für Lehrer: -</font> <a href="netswitch.cgi"> <img src="lock.gif" align=middle border=0 width=40 height=40> - externen Zugriff für das Subnetz sperren/freigeben </a> </td> </tr>Der Link kann (und sollte) natürlich auch in den anderen Dateien des Interfaces eingefügt werden:
- in /home/www/admin/admin.cgi
- in /var/apache/secure/admin/admin.cgi
Mögliche Fehlerquellen
Es gibt Hinweise darauf, dass ein Neueinlesen der Konfigurationsdatei von Squid unter Last dazu führen kann, dass gestartete, aber noch nicht beendete Kind-Prozesse von Squid sich im Speicher festfressen. Bei mir in der Schule läft Arktur mit einer Aktualisierung der Squid-Konfig per cronjob alle 5 Minuten (siehe s-squid.htm) ohne solche Probleme
Die Dateien im Downloadpaket sind in relativen Pfaden gepackt, man kann sie also zum Nachschauen erstmal in /tmp oder sonstwo entpacken. Das richtige Einspielen geschieht dann nach einem Wechsel ins Wurzelverzeichnis (cd /) mit:
tar xzf /woauchimmer/httpswitch.tgzDas Download-Archiv httpswitch.tgz, Größe 7738
Nach oben
© Thomas Litsch, zuletzt aktualisiert 01.05.2001, Email: thomas.litsch@linux-schule.de