Bug 26382 - IP-basierte Filterung
Summary: IP-basierte Filterung
Status: CLOSED FIXED
Alias: None
Product: UCS@school
Classification: Unclassified
Component: Proxy services
Version: UCS@school 3.0
Hardware: Other Linux
: P5 normal
Target Milestone: UCS@school 3.0 MS2
Assignee: Janek Walkenhorst
QA Contact: Felix Botner
URL:
Keywords:
Depends on:
Blocks: 26351
  Show dependency treegraph
 
Reported: 2012-03-06 17:59 CET by Alexander Kläser
Modified: 2012-06-11 06:29 CEST (History)
3 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Customer ID:
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2012-03-06 17:59:18 CET
Damit in dem UMC-Web-Filter-Modul Web-Filter pro IP-Adresse gesetzt werden können, ist eine entsprechende Erweiterung des Proxy-Pakets notwendig. Ziel ist es, dass per UCR-Variablen eine White- oder Blacklist sowie eine Liste von IP-Adressen angegeben werden können, auf die der durch die Liste vorgegebenen Filter angewandt wird.
Comment 1 Janek Walkenhorst univentionstaff 2012-03-09 17:00:51 CET
Die Regeln können jetzt eine Priorität haben
 proxy/filter/setting/priority=123
(Ganzzahl >= 0, Standardwert 0, Höher == höhere Priorität == zuerst ausgewertet)

Die Filterung ist jetzt auch für Räume pro IP-Adresse möglich.
Neue UCRV:

 proxy/filter/room/RAUM/ip=123.123.123.123 34.34.93.47
Liste der IPs die in diesem Raum sind, Leerzeichen-separiert.

 proxy/filter/room/RAUM/rule=BENUTZER
Name der Regel (Name des Lehrers der aktuell in diesem Raum ist)

Diese Regel wird im bekannten Format unter "setting-user" abgelegt:
 proxy/filter/setting-user/BENUTZER/{{url,domain}/{blacklisted,whitelisted}/{1..99},filtertype}



Die Möglichkeit der LDAP-Suche für Gruppenmitglieder von SquidGuard kann nicht genutzt werden, weil die Windows-Domäne im Benutzernamen damit nicht funktionieren würde.

ucs-school-webproxy (8.0.4-1)
Comment 2 Janek Walkenhorst univentionstaff 2012-03-12 11:27:52 CET
(In reply to comment #1)
> Die Regeln können jetzt eine Priorität haben
>  proxy/filter/setting/priority=123
> (Ganzzahl >= 0, Standardwert 0, Höher == höhere Priorität == zuerst
> ausgewertet)

Die UCRV heißt:
 proxy/filter/setting/FILTERNAME/priority

Changelog angepasst
Comment 3 Alexander Kläser univentionstaff 2012-04-19 14:23:37 CEST
Folgendes Verhalten wäre noch notwendig, wird eine Regel aktiviert, also:

  proxy/filter/room/<roomName>/rule=<ruleName>

... dann wäre es wünschenswert, dass die Regel zunächst in proxy/filter/setting-user nachgeschlagen wird und, wenn sie nicht exisitiert, in proxy/filter/setting.
Comment 4 Alexander Kläser univentionstaff 2012-04-19 14:24:08 CEST
(In reply to comment #3)
> Folgendes Verhalten wäre noch notwendig, wird eine Regel aktiviert, also:
> 
>   proxy/filter/room/<roomName>/rule=<ruleName>
> 
> ... dann wäre es wünschenswert, dass die Regel zunächst in
> proxy/filter/setting-user nachgeschlagen wird und, wenn sie nicht exisitiert,
> in proxy/filter/setting.

→ Dies ist notwendig für Bug 26351.
Comment 5 Janek Walkenhorst univentionstaff 2012-04-25 16:15:50 CEST
(In reply to comment #4)
> (In reply to comment #3)
> > Folgendes Verhalten wäre noch notwendig, wird eine Regel aktiviert, also:
> > 
> >   proxy/filter/room/<roomName>/rule=<ruleName>
> > 
> > ... dann wäre es wünschenswert, dass die Regel zunächst in
> > proxy/filter/setting-user nachgeschlagen wird und, wenn sie nicht exisitiert,
> > in proxy/filter/setting.
> 
> → Dies ist notwendig für Bug 26351.
ucs-school-webproxy (8.0.11-1)

Wenn die Regel nicht unter /settings-user gefunden wird, wird versucht sie als Referenz auf eine Regel unter /settings auszuwerten.
Comment 6 Alexander Kläser univentionstaff 2012-05-25 11:32:52 CEST
Aus Bug 26351, Comment 6:
> Der Traceback ist weg, allerdings werden die Listen noch nicht richtig
> ausgewertet.
> 
> Eine Ad-Hoc Whitelist ("yahoo.de") sperrt nicht nur den Zugriff auf alle
> anderen Webseiten, sondern auch auf yahoo.
> 
> Zudem gibt es noch ein Problem im Backend aufgrund dessen einmal getroffene
> Filterregeln nicht mehr überschrieben werden können.

Das scheint noch ein Problem mit dem Backend zu sein. Eine Ad-Hoc-Whitelist wird über das Computerraummodul (für Benutzer Administrator) wie folgt gesetzt:

  proxy/filter/room/A112/ip: 10.200.26.100 10.200.26.102
  proxy/filter/room/A112/rule: Administrator
  proxy/filter/setting-user/Administrator/domain/whitelisted/1: foobar.com
  proxy/filter/setting-user/Administrator/filtertype: whitelist-block

... das scheint soweit richtig.
Comment 7 Lukas Walter univentionstaff 2012-05-25 14:43:18 CEST
Das Frontend erlaubt unter Anderem auch Regeln für alle Schueler oder Lehrer (oder auch Mitarbeiter) einer Schule zu setzen, die squidGuard.conf berücksichtigt diese Einstellungen nicht.
Comment 8 Lukas Walter univentionstaff 2012-05-25 14:50:38 CEST
(In reply to comment #7)
> Das Frontend erlaubt unter Anderem auch Regeln für alle Schueler oder Lehrer
> (oder auch Mitarbeiter) einer Schule zu setzen, die squidGuard.conf
> berücksichtigt diese Einstellungen nicht.

Ausgelagert nach Bug #27288
Comment 9 Janek Walkenhorst univentionstaff 2012-05-25 17:02:39 CEST
(In reply to comment #6)
Das funktioniert, wenn die UCRV-Regeln konsistent und korrekt gesetzt werden.
Comment 10 Alexander Kläser univentionstaff 2012-05-29 13:32:14 CEST
Die Squidguard-Konfiguration greift nicht so wie es beabsichtigt war. Die UCR-Variablen erzeugen eine entsprechend erwartete Konfigurationsdatei, allerdings hat diese nicht den erwünschten Effekt. Die IP-Adressen-basierten Squidguard-Regeln scheinen ignoriert zu werden, die Gruppeneinstellungen haben immer Vorrang. Getestet mit wget:

http_proxy=http://10.200.28.36:3128/ \
  wget --proxy-user=student --proxy-password=******** \
  -S http://google.de -O -
Comment 11 Janek Walkenhorst univentionstaff 2012-05-29 16:40:21 CEST
(In reply to comment #10)
> Die Squidguard-Konfiguration greift nicht so wie es beabsichtigt war. Die
> UCR-Variablen erzeugen eine entsprechend erwartete Konfigurationsdatei,
> allerdings hat diese nicht den erwünschten Effekt. Die IP-Adressen-basierten
> Squidguard-Regeln scheinen ignoriert zu werden, die Gruppeneinstellungen haben
> immer Vorrang. Getestet mit wget:
> 
> http_proxy=http://10.200.28.36:3128/ \
>   wget --proxy-user=student --proxy-password=******** \
>   -S http://google.de -O -
Die Reihenfolge der Regeln in der Konfiguration wurde angepasst.
Comment 12 Felix Botner univentionstaff 2012-05-29 16:58:27 CEST
OK, Regel aus dem Computerraum Modul greifen nun, auch wenn es für den Benutzer schon Regel gibt.
Comment 13 Stefan Gohmann univentionstaff 2012-06-11 06:29:39 CEST
UCS@school 3.0 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer  neueren Version von UCS@school erneut auftreten, so sollte dieser Bug dupliziert werden: "Clone This Bug"