BlockGroups v1.0
Routerzugang für PC-Gruppen oder einzelne PC's via CGI sperren / freigeben
1. Inhalt
- Inhalt
- Disclaimer
- Installationshinweise für FLi4L v3.0.[0-1]
- Voraussetzungen
- Installation
- Funktion und Scriptaufrufe
- Konfiguration
- OPT_BLOCKGROUPS
- BLOCKGROUPS_N
- BLOCKGROUPS_n_NAME
- BLOCKGROUPS_n_HOSTS_N
- BLOCKGROUPS_n_HOST_m_IP
- BLOCKGROUPS_n_HOST_m_NAME
- Benutzerrechte
- OPT_HTTPD
- HTTPD_USER_N
- HTTPD_USER_n_USERNAME
- HTTPD_USER_n_PASSWORD
- HTTPD_USER_n_RIGHTS
- Dank
2. Disclaimer
Ich übernehme keinerlei Verantwortung für eventuelle Schäden, die durch dieses Skript verursacht
werden könnten. Die Benutzung erfolgt ausdrücklich auf eigene Verantwortung.
3. Installationshinweise für FLi4L v3.0.[0-1]
3.1 Voraussetzungen
- In der FLI4l-Config müssen aktiviert sein:
- der HTTPD - Status-Webserver
- das opt_portfw
- arp aus den fli4l-tools
- PC's, die in Gruppen eingetragen werden, müssen feste IP's haben
Siehe: Dokumentation des HTTPD - Status-Webserver
3.2 Installation
- Man entpacke das Archiv und kopiere alles in das FLi4L-Basisverzeichnis
- Anpassen der Datei blockgroups.txt im config-Verzeichnis (OPT_BLOCKGROUPS auf YES wechseln)
- Optional: Wer das Sicherheits-Modell des Mini-HTTPD benutzen möchte, kann bei den HTTPD-Usern
in der Datei config/httpd.txt den Bereich "blockgroups" sowie die Rechte "view", "viewone" und "set"
setzen.
(siehe: Benutzerrechte)
- Nun noch eine neue Diskette erstellen oder den Router per imonc updaten, und schon kann man
loslegen.
4. Funktion und Scriptaufrufe
Ich habe dieses Script geschrieben, damit ich in der Schule schnell und einfach einer definierten
Gruppe von Computern den Zugang zum Internet sperren bzw. freischalten kann. Damit das Ganze etwas
flexibler ist, besteht außerdem die Möglichkeit, den Internetzugang für einelne PC's einer Gruppe zu
sperren bzw. freizuschalten.
Das Script kann auf zweierlei Weisen aufgerufen werden:
- Über http://fli4l/admin/blockgroups.cgi
(sollte normalerweise über "http://fli4l -> Login -> Opt - BlockGroups" erfolgen)
Dieser Aufruf zeigt alle eingetragenen Gruppen und ihre Computer. Jede Gruppe und jeder
Computer kann gesperrt oder freigeschaltet werden.
Die Möglichkeit dieses Aufrufs steht nur Benutzern zur Verfügung, bei denen entweder das Recht
HTTPD_USER_%_RIGHTS='all'
oder
HTTPD_USER_%_RIGHTS='blockgroups:view,set'
eingetragen ist.
Siehe: Benutzerrechte)
- Über http://fli4l/admin/blockgroups.cgi?action=onegroup&group=n
(kann nicht über "http://fli4l -> Login -> Opt - BlockGroups" erfolgen)
Dieser Aufruf zeigt nur eine durch das Parameter group (n = Nummer der Gruppe)
festgelegte Gruppe und ihre Computer. Es ist nur möglich, diese Gruppe und ihre Computer zu sperren
oder freizuschalten und nicht etwa auch die Computer einer anderen Klasse oder - noch lustiger -
die der Gruppe "Verwaltung".
Der Aufruf kann z.B. in eine Verknüpfung auf dem Desktop eines Lehrer-PC's im Computerraum oder auf
dem Desktop eines PC's in der Medienecke einer Klasse eingetragen werden.
Beispiele:
-
Die Rechner im Computerraum sind in Gruppe 2 eingetragen.
Aufruf: http://fli4l/admin/blockgroups.cgi?action=onegroup&group=2
-
Die Rechner in der Klasse 5a sind in Gruppe 4 eingetragen.
Aufruf: http://fli4l/admin/blockgroups.cgi?action=onegroup&group=4
Die Möglichkeit dieses Aufrufs steht natürlich allen Benutzern zur Verfügung, bei denen die Rechte
für den ersten Aufruf eingetragen sind. Außerdem können auch Benutzer mit dem Recht
HTTPD_USER_%_RIGHTS='blockgroups:viewone'
das Script auf diese zweite Weise starten.
Ist bei diesen Benutzern zusätzlich noch das Recht
HTTPD_USER_%_RIGHTS='blockgroups:viewone,set'
eingetragen, können sie auch die Sperrungen bzw. Freischaltungen vornehmen.
Siehe: Benutzerrechte)
5. Konfiguration
Die Konfiguration wird in der Datei "/fli4l-3.0.1/config/blockgroups.txt" vorgenommen.
5.1 OPT_BLOCKGROUPS
| OPT_BLOCKGROUPS='yes' |
das BLOCKGROUPS-Package an- / ausschalten |
"yes" = an / "no" = aus |
5.2 BLOCKGROUPS_N
| BLOCKGROUPS_N=0 |
Anzahl der eingetragenen Gruppen |
muss > 0 sein wenn OPT_BLOCKGROUPS='yes' |
5.3 BLOCKGROUPS_n_NAME
| BLOCKGROUPS_n_NAME="Name" |
Name der Gruppe n
Beispiele:
BLOCKGROUPS_1_NAME='Verwaltung'
BLOCKGROUPS_2_NAME='Computerraum'
BLOCKGROUPS_3_NAME='Klasse 5a'
|
n muss durch eine Zahl ersetzt werden |
5.4 BLOCKGROUPS_n_HOSTS_N
| BLOCKGROUPS_n_HOSTS_N=0 |
Anzahl der Computer in Gruppe n |
muss > 0 sein; n muss durch eine Zahl ersetzt werden |
5.5 BLOCKGROUPS_n_HOST_m_IP
| BLOCKGROUPS_n_HOST_m_IP='IP' |
IP des Computers m in Gruppe n
Beispiele:
BLOCKGROUPS_1_HOST_1_IP='192.168.0.20'
BLOCKGROUPS_2_HOST_2_IP='192.168.0.51'
BLOCKGROUPS_3_HOST_4_IP='192.168.0.83'
|
n und m müssen jeweils durch eine Zahl ersetzt werden |
5.6 BLOCKGROUPS_n_HOST_m_NAME
| BLOCKGROUPS_n_HOST_m_NAME='Name' |
Name des Compters m in Gruppe n
Beispiele:
BLOCKGROUPS_1_HOST_1_NAME='vwaltung_20'
BLOCKGROUPS_2_HOST_2_IP='craum_51'
BLOCKGROUPS_3_HOST_4_IP='kl5a_83'
|
n und m müssen jeweils durch eine Zahl ersetzt werden |
6. Benutzerrechte
Die Eintragung der Benutzer und ihrer Rechte wird in der Datei "/fli4l-3.0.1/config/httpd.txt"
vorgenommen.
Eine ausführliche Dokumentation dieser Datei finden Sie hier.
Von Bedeutung sind folgende Variablen:
OPT_HTTPD
HTTPD_USER_N
HTTPD_USER_n_USERNAME
HTTPD_USER_n_PASSWORD
HTTPD_USER_n_RIGHTS.
6.1 OPT_HTTPD
| OPT_HTTPD='yes' |
das HTTPD-Package an- / ausschalten |
es muss "yes" eingetragen sein ! |
6.2 HTTPD_USER_N
| HTTPD_USER_N=0 |
Anzahl der Benutzer |
Sie sollten hier mindestens 1 eintragen!
Andernfalls kann jeder Benutzer alles tun (z.B. alles sperren).
|
6.3 HTTPD_USER_n_USERNAME
| HTTPD_USER_n_USERNAME='Name' |
Name des Benutzers n
Beispiele:
HTTPD_USER_1_USERNAME='admin'
HTTPD_USER_2_USERNAME='lehrer'
|
n muss durch eine Zahl ersetzt werden |
6.4 HTTPD_USER_n_PASSWORD
| HTTPD_USER_n_PASSWORD='passwort' |
Passwort des Benutzers n
|
n muss durch eine Zahl ersetzt werden |
6.5 HTTPD_USER_n_RIGHTS
| HTTPD_USER_n_RIGHTS='Rechte' |
Rechte des Benutzers n
Beispiele:
HTTPD_USER_1_USERNAME='admin'
HTTPD_USER_1_PASSWORD='xxxxxx'
HTTPD_USER_1_RIGHTS='all'
Dieser Benutzer hat alle Rechte.
HTTPD_USER_2_USERNAME='groupsadmin'
HTTPD_USER_2_PASSWORD='xxxxxx'
HTTPD_USER_2_RIGHTS='blockgroups:view,set'
Dieser Benutzer hat nur Zugriff auf "blockgroups".
Sieht aber alle Gruppen und hat alle Rechte.
HTTPD_USER_2_USERNAME='lehrer'
HTTPD_USER_2_PASSWORD='yyyyyy'
HTTPD_USER_2_RIGHTS='blockgroups:viewone,set'
Dieser Benutzer kann nur eine Gruppe sehen und sperren bzw. freischalten.
|
n muss durch eine Zahl ersetzt werden |
7. Dank
Das OPT CGIConfig2 v1.0 von Benjamin Hering
(bosborros@gmx.net) diente mir als Vorlage für mein Script.
Die entscheidenden Code-Zeilen habe ich von ihm übernommen.
Vielen Dank an ihn und das gesamte fli4l-Team.
Axel Beilhartz
abeilhartz@schul-office.de