Inhaltsverzeichnis
UCS@school 4.4 steht jetzt auch für das vierte Minor-Release von Univention Corporate Server (UCS) zur Verfügung. Es profitiert von einer Reihe an umfangreichen Funktionserweiterungen und Verbesserungen, neue Eigenschaften sowie diverse Detailverbesserungen und Fehlerkorrekturen, die in UCS 4.4 eingeflossen sind. Die wichtigsten Änderungen im Überblick:
Für große Schulumgebungen bei Schulträgern wurde der Installationsprozess vereinfacht, wodurch die Neuinstallation jetzt allgemein schneller abläuft. So wird z.B. bei der Installation eines Schulservers automatisch erkannt, dass es sich um einen Schulserver handelt, welche Pakete benötigt werden und für welche Schule er konfiguriert werden soll.
Standardmäßig wird nun bei fast allen UCS@school-Objekten (Benutzern, Klassen, Arbeitsgruppen, Räumen, Schulen, ...) ein zusätzliches Rollenattribut gepflegt, das vor allem die Anbindung externer Services vereinfacht.
Das Portal wurde für Landes-, Schulträger- sowie Schulinstallationen weiter optimiert. Es können nun Kategorien nebeneinander dargestellt werden, eine Anmeldung vorausgesetzt und eigene Oberflächendesigns hinterlegt werden.
Mit UCS 4.4 bzw. UCS@school 4.4 wurde die Integration von RADIUS mit der RADIUS-App aus UCS vereinheitlicht und verbessert. So stehen jetzt unter UCS@school alle Features aus beiden Apps zur Verfügung. Darüber hinaus wurde ein detailliertes Logging für Authentifizierungsanfragen implementiert.
Während der Aktualisierung kann es zu Ausfällen von Diensten innerhalb der Domäne kommen. Aus diesem Grund sollte das Update innerhalb eines Wartungsfensters erfolgen. Grundsätzlich wird empfohlen das Update zunächst in einer Testumgebung einzuspielen und zu testen. Die Testumgebung sollte dabei identisch zur Produktivumgebung sein. Je nach Systemgeschwindigkeit, Netzwerkanbindung und installierter Software kann das Update zwischen 20 Minuten und mehreren Stunden dauern.
Das Update von UCS@school muss zunächst auf dem Domaincontroller Master durchgeführt werden, bevor das Update auf den übrigen UCS@school-Systemen der Domäne gestartet werden kann. Ansonsten wird es zu Problemen auf den übrigen UCS@school-Schulservern kommen.
Beginnend mit UCS@school 4.4 wird der Betrieb von zusätzlichen Anmeldeservern am Schulstandort (secondary slaves) nicht mehr von UCS@school unterstützt. Deshalb sollte vor der Aktualisierung auf UCS@school 4.4 geprüft werden, wo/wie die installierten Dienste der betroffenen Systeme weiterhin angeboten werden können.
Beginnend mit UCS@school 4.4 ist das UMC-Modul http://docs.software-univention.de/ucsschool-umc-import-handbuch-4.4.html) zu finden.
kein Bestandteil mehr von UCS@school und wird während des Updates automatisch entfernt. Deshalb sollte vor der Aktualisierung auf UCS@school 4.4 eine alternative Lösung für den Import verwendet werden. Seit UCS@school 4.2 v6 wird das UMC-Modul mit UCS@school ausgeliefert. Wir empfehlen die eigenen Importprozesse zu prüfen und an das neue UMC-Modul anzupassen. Das UMC-Modul beinhaltet alle wichtigen Funktionen aus dem und darüber hinaus noch viele weitere Features. Weitere Informationen dazu sind im UCS@school-Handbuch (Es sollte geprüft werden, ob ausreichend Festplattenplatz verfügbar ist. Eine Standard-Installation benötigt min. 6 GB Speicherplatz. Das Update benötigt je nach Umfang der vorhanden Installation mindestens 2 GB weiteren Speicherplatz zum Herunterladen und Installieren der Pakete.
Für das Update sollte eine Anmeldung auf der lokalen Konsole des Systems mit dem Benutzer
root
durchgeführt und das Update dort gestartet werden. Alternativ
kann das Update über die Univention Management Console durchgeführt werden.
Eine Remote-Aktualisierung über SSH wird nicht empfohlen, da dies beispielsweise bei
Unterbrechung der Netzverbindung zum Abbruch des Update-Vorgangs und zu einer
Beeinträchtigung des Systems führen kann. Sollte dennoch eine Aktualisierung über eine
Netzverbindung durchgeführt werden, ist sicherzustellen, dass das Update bei einer Unterbrechung
der Netzverbindung trotzdem weiterläuft. Hierfür kann beispielsweise das Tool
screen
eingesetzt werden, das auf allen Systemrollen installiert ist.
Mit UCS 4.4 bietet Univention wieder ein Skript an, mit dem Probleme, die das Update des UCS Systems verhindern würden, schon vor dem Update erkannt werden können. Diese Skript kann vor dem Update manuell auf das System geladen und ausgeführt werden:
# download -> curl -OOs http://updates.software-univention.de/download/univention-update-checks/pre-update-checks-4.4{,.gpg} # run script -> gpgv --keyring /usr/share/keyrings/univention-archive-key-ucs-4x.gpg pre-update-checks-4.4.gpg \ pre-update-checks-4.4 && bash pre-update-checks-4.4 gpgv: Signature made Mo 11 Mär 2019 12:09:59 CET gpgv: using RSA key 36602BA86B8BFD3C gpgv: Good signature from "Univention Corporate Server 4.x <packages@univention.de>" Starting pre-update checks (Sa 23. Feb 08:21:12 CET 2019): Checking app_appliance ... OK Checking disk_space ... OK Checking failed_ldif ... OK Checking hold_packages ... OK Checking ldap_connection ... OK Checking ldap_schema ... OK ...
Ab UCS@school 4.4 wird nun standardmäßig bei fast allen UCS@school-Objekten (Benutzern, Klassen, Arbeitsgruppen, Räumen, Schulen, ...) ein zusätzliches Rollenattribut gepflegt. Dieses Attribut wird ab sofort in UCS@school vorausgesetzt, da es zukünftig zur Identifikation von UCS@school-Objekten im LDAP-Verzeichnis verwendet werden.
Während des Updates wird standardmäßig ein Migrationsskript ausgeführt, welches allen unterstützten
UCS@school-Objekten ein Rollen-Attribut hinzufügt und das Feature aktiviert.
Falls notwendig, kann diese automatische Migration während des Updates verhindert werden,
um sie zu einem späteren Zeitpunkt manuell durchzuführen. Dafür muss die UCR Variable
ucsschool/feature/roles/skip_migration
vor dem Update
auf den Wert yes
gesetzt werden.
Das nachträgliche Hinzufügen der Rollen-Attribute kann über das Kommandozeilenwerkzeug
/usr/share/ucs-school-import/scripts/migrate_ucsschool_roles
gestartet werden.
Üblicherweise wird das Werkzeug mit dem Parameter --all-objects
gestartet.
Mit UCS 4.4 bzw. UCS@school 4.4 wurde die Integration von RADIUS mit der RADIUS-App aus UCS vereinheitlicht. Daher wird beginnend mit UCS@school 4.4 während der Installation des Pakets ucs-school-radius-802.1x auch automatisch die UCS-App RADIUS installiert. Mit der Installation der RADIUS-App werden auch dessen Features (re-)aktiviert. Sollte die RADIUS-App in der Vergangenheit schon einmal eingesetzt worden sein, sollte vor/nach dem Update genau geprüft werden, ob ggf. noch Einstellungen von der vorherigen Verwendung im LDAP-Verzeichnis zu finden sind und ob diese noch aktuell sind, um Probleme bei den Zugriffsberechtigungen zu vermeiden.
Mit UCS@school 4.4 ändern sich einige Standardeinstellungen und Optionen bei der Importschnittstelle für Benutzer. Dies macht ggf. einige Anpassungen an bereits vorhandenen JSON-Konfigurationsdateien notwendig, um das alte Verhalten wiederherzustellen.
So wurde z.B. die Voreinstellung für die Optionen normalize:vorname
und normalize:nachname
von true
auf false
geändert. Infolgedessen werden Vor- und Nachname beim Benutzerimport nicht
mehr normiert und können somit Umlaute etc. enthalten. Dies ist insbesondere dann wichtig, wenn der Wert für record_uid
über ein Schema aus firstname
oder lastname
berechnet wird und sich jetzt durch Umlaute ein anderer
Wert ergeben kann. Das Schema in scheme:username
sollte daher geprüft werden, dass das Voranstellen von
<:umlauts>
notwendig ist, um die Werte weiterhin die auf gleiche Weise zu berechnen.
Weiterhin wurde aus Konsistenzgründen die Konfigurationsoption scheme:recordUID
in scheme:record_uid
umbenannt.
Die interne Methode ImportUser.make_recordUID()
wurde entsprechend auch in ImportUser.make_record_uid()
umbenannt.
Analog wurden auch die Konfigurationsoption sourceUID
und die Kommandozeilenoption --sourceUID
in
source_uid
und --source_uid
umbenannt. Die interne Methode ImportUser.make_sourceUID()
wurde zu ImportUser.make_source_uid()
umbenannt.
Im Benutzerimport ändert sich auch das Verhalten von school_classes
. Vor UCS@school 4.4 wurden Klassenzuordnungen von Benutzern nicht
verändert, wenn in der Importdatei kein Wert für school_classes
angegeben wurde. Beginnend mit UCS@school 4.4 werden alle Klassenzuordnungen
eines Benutzers entfernt, wenn das entsprechende Feld in der Importdatei leer ist und school_classes
im Import-Mapping zugeordnet wurde.
Um das alte Verhalten wiederherzustellen, muss die Konfigurationsoption school_classes_keep_if_empty
auf den Wert true
gesetzt werden.
Nach dem Update müssen die neuen oder aktualisierten Join-Skripte ausgeführt werden. Dies kann auf zwei Wegen erfolgen:
über das UMC-Modul
oder
durch Aufruf des Befehls univention-run-join-scripts
als Benutzer root.
Der in UCS@school 4.4 eingeführte Installationsprozess nutzt das neue Feature Join-Hooks, das ab Univention Corporate Server 4.4 zur Verfügung steht. Join-Hooks werden in einer UCS@school-Umgebung vom Domänencontroller Master im LDAP-Verzeichnis hinterlegt und automatisch während des Join-Vorgangs bzw. während der Ausführung von Joinskripten ausgeführt. Der UCS@school-Join-Hook installiert auf allen Systemen der Domäne automatisch die UCS@school-App aus dem Univention App Center und installiert die auf dem jeweiligen System benötigten UCS@school-Pakete, sofern diese noch fehlen.
Nach dem Update des Domänencontroller Master auf UCS 4.4/UCS@school 4.4 muss auf allen anderen Systemen der Domäne der Befehl
univention-run-join-scripts
auf der Kommandozeile ausgeführt werden, was den Join-Hook auf
jedem System erstmalig ausführt. Für die Erstinstalation der benötigten Pakete wird der Join-Hook je nach Rolle
des Systems und dessen Systemperformance mehrere Minuten benötigen. Dieser Vorgang darf dabei nicht abgebrochen
werden.
Univention Management Console verwendet für die Darstellung der Web-Oberfläche zahlreiche Javascript- und CSS-Funktionen. Cookies müssen im Browser zugelassen sein. Die folgenden Browser werden empfohlen:
Chrome ab Version 71
Firefox ab Version 60
Safari und Safari Mobile ab Version 12
Microsoft Edge ab Version 18
Der Internet Explorer wird ab diesem Release nicht mehr von Univention Management Console unterstützt.
Auf älteren Browsern können Darstellungs- oder Performanceprobleme auftreten.
Die Changelogs mit den detaillierten Änderungsinformationen werden nur in Englisch gepflegt. Aufgeführt sind die Änderungen zwischen den UCS@school-Versionen 4.3 v7 und 4.4 v1. Die Änderungsinformationen für vorherige Versionssprünge finden sich unter https://docs.software-univention.de/.
A typo on the demo portal has been fixed (Bug 48540).
The UCS@school logo has been updated (Bug 48699).
The postinst scripts of all UCS@school packages now use call_joinscript
instead of calling join scripts directly (Bug 48731).
The meta packages have been adapted to handle the simplified installation process (Bug 47969, Bug 48883).
The meta packages for Domänencontroller Master now recommend the installation of the HTTP-API import backend and frontend (Bug 48790).
The LDAP attribute ucsschoolRole of domain controller objects is now set during domain join (Bug 48519).
The installation process has been simplified for the UCS@school administrator. On system roles other than Domänencontroller Master the UCS@school configuration wizard does no longer have to be run manually. All necessary steps for installation of UCS@school are done automatically during domain join if the corresponding school was previously created in LDAP directory (Bug 47942, Bug 47940, Bug 47941, Bug 47954, Bug 47955, Bug 47957, Bug 47696. Bug 48534, Bug 48740, Bug 48734).
Fixed join of DC backup with Samba4 into single server environment (Bug 48815).
Support for the new join script API has been added to all affected packages (Bug 47076).
The package ucs-school-radius-802.1x
has been revised and simplified. It now includes an addon for the RADIUS app from UCS.
This means ucs-school-radius-802.1x
now depends on the univention-radius package which will be installed automatically as a dependency.
Therefore the features of the RADIUS app and the UCS@school RADIUS integration are now provided in UCS@school (Bug 46018).
The installation process has been simplified for the UCS@school administrator. On system roles other than Domänencontroller Master the UCS@school configuration wizard does no longer have to be run manually. All necessary steps for installation of UCS@school are done automatically during domain join if the corresponding school was previously created in LDAP directory (Bug 47942, Bug 47940, Bug 47941, Bug 47954, Bug 47955, Bug 47957, Bug 47696. Bug 48534).
The UCS@school configuration wizard now recognizes all already configured systems and shows a corresponding message (Bug 48697).
In some rare cases the UCS@school configuration wizard did not install any UCS@school packages. This problem has been fixed (Bug 48665).
An unnecessary postinst script has been removed (Bug 48681).
New LDAP indices have been added, e.g. for ucsschoolRole (Bug 48384).
An OID collision in the UCS@school LDAP schema has been fixed. This is just a precaution. Problems are not known at this time (Bug 45538).
The LDAP schema has been updated to activate substring search for the LDAP attribute ucsschoolRole (Bug 48246).
The default of the settings normalize:firstname
and normalize:lastname
has been changed from true
to false
. As a consequence the displayName (if not set explicitly) will also not be normalized and will thus contain umlauts etc. (Bug 47351).
If the record_uid
is calculated using a schema from firstname
or lastname
, then it might change now! Prepend <:umlauts>
to the schemas in scheme:username
to prevent this.
To be more consistent with other variable names, the configuration key scheme:recordUID
has been renamed to scheme:record_uid
. The method ImportUser.make_recordUID()
has also been renamed to ImportUser.make_record_uid()
(Bug 48478).
To be more consistent with other variable names, the configuration key sourceUID
and its associated command line argument --sourceUID
have been renamed to source_uid
and --source_uid
respectively. The method ImportUser.make_sourceUID()
has also been renamed to ImportUser.make_source_uid()
(Bug 48478).
The school_classes
user attribute (the class assignment) is now emptied, if the class field in a row of a CSV file is empty.
Before, the school_classes
user attribute was actively restored in the case that a modification had completely emptied it.
To return to the previous behavior add the key school_classes_keep_if_empty
to the import configuration with a value of true
(Bug 48045).
The UCS@school import framework's ImportUser
class has been made more accessable to 3rd party software (Bug 48423).
UCS@school now maintains a new LDAP attribute ucsschoolRole for most UCS@school LDAP objects. The attribute contains information about the object's role within a specific scope (Bug 48226, Bug 48678, Bug 48732).
A user's ucsschoolRole attribute is now updated, when changing the school (Bug 48649).
The description of the UCR variable ucsschool/import/attach/policy/default-umc-users
has been clarified (Bug 48722).
Starting with UCS@school 4.4, it is no longer supported to create secondary slaves for a school server. Therefore the script ucs-school-join-secondary-samba4
has been removed (Bug 48836).
The handling of samba's local accounts "dns-$hostname" has been improved. The account is not added to the ignore list of univention-s4-connector anymore (Bug 48534).
A problem has been solved ucsschool
library that returned the wrong shares when fetching all WorkGroupShares
(Bug 48428).
The UCS@school library has been extended to provide internal functions a faster way to query all users with certain criteria from LDAP (Bug 47885).
An error when filtering in a search for schools was fixed (Bug 48429).
Activate the ucsschoolRole feature by default (Bug 48226, Bug 48226, Bug 48647, Bug 48741).
A users school_classes
are now removed, if the school_classes
attribute is empty and specified in csv:mapping
(Bug 48045).
An additional validation has been added for computer objects to prevent new IP subnets etc. from being silently added (Bug 48099).
If ucsschool/import/attach/policy/default-umc-users
was set to no
, the LDAP group Domain Users $OU
had not been created erroneously.
This problem has been fixed (Bug 48722).
The handling of ucsschoolRole for secondary school slaves has been removed (Bug 48732).
A user's ucsschoolRole attribute is now updated, when changing the school (Bug 48649).
The grid layout of the computer room module has been adapted to the design changes done for UCS 4.4 (Bug 48868).
Creating an exam with a whitespace at the beginning or end of the name created a traceback upon starting the exam. Whitespaces are now trimmed automatically (Bug 48509).