Bug 25700 - Übernahme des Pakets ucs-school-webproxy
Übernahme des Pakets ucs-school-webproxy
Status: CLOSED FIXED
Product: UCS@school
Classification: Unclassified
Component: Proxy services
UCS@school for UCS 2.4
Other Linux
: P5 normal (vote)
: UCS@school 3.0 MS1
Assigned To: Felix Botner
Arvid Requate
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-01-03 17:36 CET by Sönke Schwardt-Krummrich
Modified: 2012-06-11 06:30 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):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sönke Schwardt-Krummrich univentionstaff 2012-01-03 17:36:38 CET
Für UCS@school 3.0 muss das Paket nach UCS 3.0 übernommen und entsprechend
umgestellt werden:
- Python 2.6
- bash/dash
- anonymous bind
- ...
Comment 1 Felix Botner univentionstaff 2012-01-11 11:13:42 CET
Im Zuge der Umstellung wird ucs-school-webproxy zusätzlich so angepasst, das die eigentliche squid Konfig nun nicht mehr aus diesem Paket kommt. Es gibt nun ein Abhängigkeit auf univention-squid und ucs-school-webproxy setzt lediglich die squid Variablen auf einen "ucsschool Defaul". 

Änderungen:

ucs-school-webproxy hängt von univention-squid ab.


Für das Update werden im preinst die alten proxy/* Variablen auf die squid/* Variablen umgesetzt, die alten werden dann gelöscht, außerdem werden hier die ucsschool Defaults der sqiud/* Variablen gesetzt, so dass diese vor den defaults aus univention-squid greifen.


Das squid.conf Template wurde entfernt (es wird univention-squid verwendet). Damit univention-squid alles aus ucs-school-webproxy abdeckt, mussten ein paar kleine Anpassungen an  univention-squid  gemacht werden (in ucsschool für 3.0 geforkt und gebaut.) Es gibt jetzt zusätzlich die Variable "squid/auth/groups" mit der man die Gruppenautorisierung (squid_ldap_group) komplett abschalten kann (wurde in ucsschool nicht verwendet) und die Variable "squid/redirect", mit der das "redirect_program" auf squidGuard gesetzt wird. Diese beiden Dinge sind für ucsschool aktiviert (nicht in univention-squid). Die alten Variablen für das squid Template werden beim Update übernommen und sind inhaltlich identisch mit denen aus univention-squid. Lediglich folgende Dinge sind jetzt ein wenig anders:
   * proxy/force hatte bisher "http_port 80 transparent" in der Squid Konfig 
     gesetzt. Das wurde auf squid/transparentproxy übernommen. Dadurch wird 
     aber jetzt nur "transparent" in der Squid Konfig gesetzt (nicht Port 80)
     und zusätzlich werden iptables redirect Regeln in 
     security/packetfilter.d/20squid gesetzt. 
   * proxy/allow/localnet=yes hatte im alten Template zur Folge, dass Zugriff
     für localhost und die lokalen Netzwerke freigeschaltet wurde, unabhängig
     von der Authentifizierung. In univention-squid erlaubt squid/allow/localnet
     nur den Zugriff von localhost. Die Netzwerke werden dann über 
     squid/allowfrom freigeschaltet, aber nur wenn keinen Authentifizierung
     verwendet wird.
AHCTUNG: Diese beiden neuen Varianten scheinen mir jetzt logischer (und sind auch univention-squid Standard) jedoch sollte in der QA nochmal genau geprüft werden, ob das so auch für ucsschool gewünscht ist.

Im postinst werden nun keine Defaults für die UCS Variablen mehr gesetzt (siehe preinst). Das dpkg-statoverride (auf user proxy) auf /var/run/samba/winbindd_privileged/ wurde entfernt, da der user proxy in die Gruppe winbindd_priv gesteckt wird und diese Zugriff hat.


Das Template für das squid init Skript und das /etc/default/squid Template wurden entfernt. Zum original der alten squid Version gab es hier lediglich folgende Unterschiede:
   * squid als user proxy starten
   * ulimit -n 4048
   * Berechtigungen für /var/spool/squid setzen
Dies funktioniert in der neuen squid3 Version bereist alles so.


Das Template für das winbind init Skript wurde entfernt. Hier wurde zusätzlich /var/run/samba/winbindd_privileged/ auf die Gruppe proxy gesetzt. Ab 3.0 gehört dieses Verzeichnis der Gruppe winbindd_priv und durch univention-squid wird der proxy Benutzer in diese Gruppe gesteckt. 
ACHTUNG: Hier sollte nochmal genau geschaut werden, ob der Zugriff auf winbind vom proxy aus immer funktioniert (es gab da wohl in ucsschool mal Schwierigkeiten und daher dann die Anpassung)


Die QA muss hier sehr genau gemacht werden, da es nicht nur die neue Version von squid (squid3) gibt, sondern das komplette Paket von eigener squid Konfig auf univention.squid umgestellt wurde.
Comment 2 Felix Botner univentionstaff 2012-02-03 09:34:00 CET
Änderung an univention-squid wurden nun in 3.0-1 übernommen, das Paket selbst wurde aus UCS@school entfernt, eine entsprechende Abhängigkeit in ucs-school-webproxy ergänzt.
Comment 3 Arvid Requate univentionstaff 2012-03-19 18:02:03 CET
Todo:
 * Changelog Eintrag
 * univention-squid sollte aus dem svn-Zweig für die Komponente ucs-school entfernt werden
Comment 4 Arvid Requate univentionstaff 2012-03-19 18:16:11 CET
Ah, in der Komponente liegen doch noch über ucs3.0-1 hinausgehende Änderungen vor, deren Integration über Bug 24281 für ucs3.0-2 geplant ist.
Comment 5 Felix Botner univentionstaff 2012-03-20 09:24:10 CET
(In reply to comment #4)
> Ah, in der Komponente liegen doch noch über ucs3.0-1 hinausgehende Änderungen
> vor, deren Integration über Bug 24281 für ucs3.0-2 geplant ist.

ja, das sind noch andere Änderungen die zu 3.0-2 übernommen werden, danach kann univention-squid aus dem ucs@school svn wieder entfernt werden.

Changelog Eintrag ergänzt.
Comment 6 Arvid Requate univentionstaff 2012-03-26 17:29:58 CEST
Verified:
 * Migration der Variablen OK
 * squid.conf aus univention-squid ersetzt die aus ucs-school-webproxy
 * LDAP-Bind ist über univention-squid abgedeckt
 * Dependency auf hinreichend aktuelle univention-squid Version ist deklariert
 * Das Verhalten von squid/allow/localnet ist jetzt wieder so wie in UCS@School 2.4: es erlaubt localhost und die lokalen Netzwerke, auch wenn Authentifikation gefordert ist.
 * winbind ist durch Bug 25771 nicht mehr relevant.
 * Changelog OK
Comment 7 Stefan Gohmann univentionstaff 2012-06-11 06:30:05 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"