UCS 4.4 Release Notes

Release Notes für die Inbetriebnahme und Aktualisierung von Univention Corporate Server (UCS) 4.4-2


Inhaltsverzeichnis

1. Release-Highlights
2. Hinweise zum Update
2.1. Empfohlene Update-Reihenfolge
2.2. UCS-Installations-DVDs nur noch als 64-Bit-Variante
3. Vorbereitung des Updates
4. Nachbereitung des Updates
5. Hinweise zum Einsatz einzelner Pakete
5.1. Univention Directory Manager
5.2. Univention Directory Notifier
5.3. Erfassung von Nutzungsstatistiken
5.4. Umfang des Sicherheits-Supports von WebKit, Konqueror und QtWebKit
5.5. Empfohlene Browser für den Zugriff auf Univention Management Console
6. Changelog
6.1. General
6.2. Basic system services
6.2.1. Univention Configuration Registry
6.3. Domain services
6.3.1. OpenLDAP
6.3.1.1. Listener/Notifier domain replication
6.3.2. DNS server
6.4. Univention Management Console
6.4.1. Univention Management Console web interface
6.4.2. Univention Portal
6.4.3. Univention Management Console server
6.4.4. Univention App Center
6.4.5. Univention Directory Manager UMC modules and command line interface
6.4.6. Modules for system settings / setup wizard
6.4.7. License module
6.4.8. System diagnostic module
6.4.9. Other modules
6.5. Univention base libraries
6.6. System services
6.6.1. PostgreSQL
6.6.2. SAML
6.6.3. Dovecot
6.6.4. Postfix
6.6.5. RADIUS
6.6.6. Kerberos
6.6.7. PAM / Local group cache
6.6.8. Other services
6.7. Virtualization
6.7.1. UCS Virtual Machine Manager (UVMM)
6.8. Services for Windows
6.8.1. Samba
6.8.2. Univention AD Takeover
6.8.3. Univention S4 Connector
6.8.4. Univention Active Directory Connection
6.9. Other changes

§Kapitel 1. Release-Highlights

Mit Univention Corporate Server 4.4-2 steht das zweite Point-Release für Univention Corporate Server (UCS) 4.4 zur Verfügung. Es umfasst Funktionserweiterungen und Verbesserungen, neue Eigenschaften sowie diverse Detailverbesserungen und Fehlerkorrekturen. Die wichtigsten Änderungen im Überblick:

  • Die UDM REST API ist erstmals als stabiles Release enthalten und wird auf allen DC Master und DC Backup Instanzen aktiviert. Weitere Informationen sind in einem Artikel zur API und den UCS 4.4-1 Release Notes zu finden.

  • Verbesserungen bei der Fehlerbehandlung für die Generierung von Lizenzen während der initialen Konfiguration.

  • In UCS Virtual Machine Manager (UVMM) lässt sich der automatische Start für Instanzen und der virtuellen CPU-Typ konfigurieren.

  • Durch das Update der Docker Engine erhalten App Anbieter mehr Möglichkeiten unter anderem durch Unterstützung von zusätzlichen Features in den Docker Compose Dateien.

  • Mit 4.4-2 wird die Aktualisierung auf den Stand des Debian Release 9.11 abgeschlossen.

  • Diverse Security Updates wurden in UCS 4.4-2 integriert, bspw. für Samba, den Linux Kernel und Dovecot. Eine vollständige Liste von Security- und Paketupdates ist in Kapitel 6 zu finden.

  • Eine Reihe zusätzlicher Attribute wird bei der Synchronisation zwischen UDM/OpenLDAP und Samba/AD Benutzerobjekten berücksichtigt (unixhome, employeeType, employeeNumber, loginShell, title, gidNumber, uidNumber, departmentNumber, roomNumber, jpegPhoto, userCertificate, initials, physicalDeliveryOfficeName, postOfficeBox, preferredLanguage).

§Kapitel 2. Hinweise zum Update

Während der Aktualisierung kann es zu temporären 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.

§2.1. Empfohlene Update-Reihenfolge

In Umgebungen mit mehr als einem UCS-System muss die Update-Reihenfolge der UCS-Systeme beachtet werden:

Auf dem Domänencontroller Master wird die maßgebliche (authoritative) Version des LDAP-Verzeichnisdienstes vorgehalten, die an alle übrigen LDAP-Server der UCS-Domäne repliziert wird. Da bei Release-Updates Veränderungen an den LDAP-Schemata auftreten können, muss der Domänencontroller Master bei einem Release-Update immer als erstes System aktualisiert werden.

§2.2. UCS-Installations-DVDs nur noch als 64-Bit-Variante

UCS-Installations-DVDs werden ab UCS 4 nur noch für 64-Bit-Architekturen bereitgestellt. Vorhandene 32-Bit UCS 3 Systeme können weiterhin über das Online Repository oder über Update DVDs auf UCS 4 aktualisiert werden. Die 32-Bit-Architektur wird für die gesamte UCS 4 Maintenance noch unterstützt.

§Kapitel 3. Vorbereitung des Updates

Es sollte geprüft werden, ob ausreichend Festplattenplatz verfügbar ist. Eine Standard-Installation benötigt min. 10 GB Speicherplatz. Das Update benötigt je nach Umfang der vorhanden Installation ungefähr 4 GB zusätzlichen 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 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 Unterbrechung der Netzverbindung trotzdem weiterläuft. Hierfür können beispielsweise die Tools screen oder at eingesetzt werden, die auf allen UCS Systemrollen installiert sind.

Univention bietet ein Skript an, mit dem Probleme, die das Update des UCS Systems verhindern würden, schon vor dem Update erkannt werden können. Dieses Skript kann vor dem Update manuell auf das System geladen und ausgeführt werden:

# download
curl -OOs https://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

...

Starting pre-update checks ...

Checking app_appliance ...                        OK
Checking block_update_of_NT_DC ...                OK
Checking cyrus_integration ...                    OK
Checking disk_space ...                           OK
Checking hold_packages ...                        OK
Checking ldap_connection ...                      OK
Checking ldap_schema ...                          OK
...

§Kapitel 4. Nachbereitung des Updates

Nach dem Update müssen die neuen oder aktualisierten Join-Skripte ausgeführt werden. Dies kann auf zwei Wegen erfolgen: Entweder über das UMC-Modul Domänenbeitritt oder durch Aufruf des Befehls univention-run-join-scripts als Benutzer root.

Anschließend muss das UCS-System neu gestartet werden.

§Kapitel 5. Hinweise zum Einsatz einzelner Pakete

§5.1. Univention Directory Manager

Folgende Attribute wurden dem UDM Modul users/user hinzugefügt: initials, postOfficeBox, preferredLanguage, physicalDeliveryOfficeName, preferredDeliveryMethod. Jedes erweiterte Attribut für diese Eigenschaften sollte dahingehend geändert werden, dass es den Namen des UDM Attributes verwendet.

§5.2. Univention Directory Notifier

Durch einen Entwurfsfehler im Univention Directory Notifier Netzwerkprotokoll Version 2 kann jeder Benutzer an Informationen über Änderungen am LDAP-Verzeichnisdienst kommen. Ein neues Protokoll Version 3 wurde mit UCS 4.3-3 erratum 427 implementiert. Für die Kompatibilität mit alten UCS Systemen bot Univention Directory Notifier standardmäßig weiterhin Version 2 an. Beginnend mit UCS-4.4 bieten neue Installationen standardmäßig nur noch Version 3 an. Protokoll 2 kann reaktiviert werden, indem die Univention Configuration Registry-Variable notifier/protocol/version auf 2 geändert und Univention Directory Notifier neu gestartet wird.

§5.3. Erfassung von Nutzungsstatistiken

Bei Verwendung der UCS Core Edition werden anonyme Nutzungsstatistiken zur Verwendung von Univention Management Console erzeugt. Die aufgerufenen Module werden dabei von einer Instanz des Web-Traffic-Analyse-Tools Piwik protokolliert. Dies ermöglicht es Univention die Entwicklung von Univention Management Console besser auf das Kundeninteresse zuzuschneiden und Usability-Verbesserungen vorzunehmen.

Diese Protokollierung erfolgt nur bei Verwendung der UCS Core Edition. Der Lizenzstatus kann überprüft werden durch den Eintrag Lizenz -> Lizenzinformation des Benutzermenüs in der rechten, oberen Ecke von Univention Management Console. Steht hier unter Lizenztyp der Eintrag UCS Core Edition wird eine solche Edition verwendet. Bei Einsatz einer regulären UCS-Lizenz erfolgt keine Teilnahme an der Nutzungsstatistik.

Die Protokollierung kann unabhängig von der verwendeten Lizenz durch Setzen der Univention Configuration Registry-Variable umc/web/piwik auf false deaktiviert werden.

§5.4. Umfang des Sicherheits-Supports von WebKit, Konqueror und QtWebKit

WebKit, Konqueror und QtWebKit werden in UCS im maintained-Zweig des Repositorys mitgeliefert, aber nicht durch Sicherheits-Updates unterstützt. WebKit wird vor allem für die Darstellung von HTML-Hilfeseiten u.ä. verwendet. Als Web-Browser sollte Firefox eingesetzt werden.

§5.5. Empfohlene Browser für den Zugriff auf Univention Management Console

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.

Mit älteren Browsern können Darstellungs- oder Performanceprobleme auftreten.

§Kapitel 6. Changelog

Die Changelogs mit den detaillierten Änderungsinformationen werden nur in Englisch gepflegt. Aufgeführt sind die Änderungen seit UCS 4.4-1:

§6.1. General

§6.2. Basic system services

§6.2.1. Univention Configuration Registry

  • Fix regression in UCS 4.4-2 erratum 221 which caused the univention-service files to be not installed any more (Bug 50098).
  • Restarting, starting and stopping of various services has been fixed (Bug 42241).

§6.3. Domain services

§6.3.1. OpenLDAP

  • An Error in the syntax-evaluation of the attribute preferredDeliveryMethod has been fixed (Bug 49930).

§6.3.1.1. Listener/Notifier domain replication

  • Fix univention-translog stat check for index (Bug 49872).

§6.3.2. DNS server

  • The maximum number of open sockets can now be set using the Univention Configuration Registry variable dns/max-socks (Bug 49493).

§6.4. Univention Management Console

§6.4.1. Univention Management Console web interface

  • Traceback dialogs may now hide the button to directly send the traceback to the vendor. Instead, only the mail button is shown (Bug 46790).
  • The detail page of UDM objects failed to open sometimes (Bug 49768).
  • The progress bar interval is now configurable via the backend of modules. Error handling of progress bars has been enhanced (Bug 48002).
  • Added SuggestionBox widget (Bug 48811).
  • It's now possible to search for users based on group membership (Bug 42607).
  • The new type interface of UDM is used in the UDM REST API (Bug 50047).
  • The new binary package univention-directory-manager-rest provides a Univention Directory Manager REST HTTP service (Bug 50034).

§6.4.2. Univention Portal

  • The portal server is restarted after the initial system setup. (Bug 50235)

§6.4.3. Univention Management Console server

  • Fix regression in UCS 4.4-2 erratum 230 which caused the univention-service file to be not installed any more (Bug 50169).
  • The error message when connecting to a module process fails is now mentioning the actual module name (Bug 43225).
  • Multiple parallel authentication requests are now correctly handled by the UMC web server (Bug 47106).
  • It is now prevented that the UMC web server creates multiple new connections for a session after the connection to the UMC server was closed and multiple parallel requests from the old session are requested (Bug 49929).
  • The progress bar interval is now configurable via the backend of modules (Bug 48002).
  • The security for authentication requests has been improved (Bug 44602).

§6.4.4. Univention App Center

  • A problem in the update from docker to docker-compose Apps has been fixed (Bug 50196).
  • Simplified the way the App Provider and the App Vendor are presented in the UMC module (Bug 50106).
  • The data directory of the Prometheus App had a change in its group ownership due to the new docker version, which handles things differently (Bug 50113).
  • Removing old docker images may have caused a traceback (Bug 50113).
  • Old docker images are now removed after an App upgrade (Bug 49486).
  • Fixed the reinitialize command on non-Master roles (Bug 50082).
  • Docker Apps can now be reinitialized when necessary. This copies the current settings into a new container. To be used internally by App Providers (Bug 50057).
  • Multi Container Apps may now use the App Settings to control their docker-compose file (Bug 50030).
  • Multi-container Apps now use a subnet managed by the App Center instead of creating arbitrary networks. This caused problems with firewalls and existing networks. The network can be configured by the Univention Configuration Registry variable appcenter/docker/compose/network, which defaults to 172.16.1.1/16. This change takes effect with new App installations (Bug 49055).
  • Due to privacy concerns, the App Center does not send the domain UUID and system UUID in the tracking information of 'search' actions anymore (Bug 49955).
  • An errata update caused the App Tab in the Users UMC module to not be visible. This update re-synchronizes the listener so that the App Tab is visible again (Bug 49832).
  • A new App Setting DockerUcrStyleEnv was added to be able to deactivate passing environment variables into docker containers that are not in the format of capital letters and underscores (Bug 49647).
  • The app badges icons in the App Center are replaced with new versions (Bug 49284).
  • Docker has been updated to version 18.09 and docker compose to version 1.24 (to allow compose format version 3.7, Bug 50166).

§6.4.5. Univention Directory Manager UMC modules and command line interface

  • The new binary package univention-directory-manager-rest provides a Univention Directory Manager REST HTTP service and is installed on Domaincontroller Master and Domaincontroller Backup Systems by default (Bug 50171, Bug 27816).
  • The syntax classes IStates, AllowDeny, AppActivatedOK, AppActivatedTrue, OkOrNot, TrueFalse, TrueFalseUp, TrueFalseUpper, booleanNone and ddnsUpdates now correctly validate input values (Bug 40731).
  • A new type interface has been introduced. Every syntax class and property may now specify a data type, which is used in the UDM REST API (Bug 50047).
  • The fallback language for extended attribute translations is now based on the primary language of the locale. Austrian German will then be translated in German instead of English (Bug 47961).
  • The UDM module users/user properties departmentNumber and roomNumber have been changed to be multi-value, as allowed in the LDAP schema. This change has been made to support synchronization with Samba/AD (Bug 49092).
  • The following properties have been added to the UDM module users/user: initials, postOfficeBox, preferredLanguage, physicalDeliveryOfficeName, preferredDeliveryMethod. The UDM module users/user has been prepared for adding the following properties: st (state) and c (country). Any extended attribute for those properties should be changed to use the same property name as CLIName (Bug 49092).
  • The printer objects are now created again in the printer default containers instead of the shares default container (Bug 49826).
  • The combobox syntax class has been added (Bug 48811).
  • An error in the creation of container/ou objects has been fixed (Bug 49478).
  • It is now checked if containers are movable before moving them to avoid having to revert the changes in case the move failed (Bug 49234).
  • Nagios objects are created again in their default containers (Bug 49594).
  • Searching for users in a certain group is now possible (Bug 42607).

§6.4.6. Modules for system settings / setup wizard

  • Make the local appliance package cache readable for the user _apt to fix an error with the Acquire::GzipIndexes=true option set for apt (Bug 49799).

§6.4.7. License module

  • Errors that happen in the appliance wizard are now shown. The user may send a mail with the traceback to Univention (Bug 46790).

§6.4.8. System diagnostic module

  • New plugin to check univentionServerRole for Windows computer objects (Bug 49958).
  • Adapt file permission check for /var/cache/univention-system-setup/ (Bug 49799).
  • Plugins taking longer than 10 minutes do not cause timeout errors anymore (Bug 48002).

§6.4.9. Other modules

  • The binary package univention-management-module-udm has been moved into the source package univention-directory-manager-rest (Bug 50034).
  • Fix regression in UCS 4.4-2 erratum 216 which caused the univention-service file to be not installed any more (Bug 50169).
  • In multi edit mode it is now possible to enable or disable apps and options individually (Bug 49829).
  • The detail page of UDM objects failed to open sometimes. This issue has been resolved (Bug 49768).
  • SuggestionBox has been added to the mapping of syntax classes (Bug 48811).
  • It's now possible to search for users based on group membership (Bug 42607).

§6.5. Univention base libraries

  • The UCR templates for LDAP ACLs on DC Slave systems have been split from 60univention-ldap-server_acl-slave into 60univention-ldap-server_acl-slave and 70univention-ldap-server_acl-slave-end. The rule which allows read access for every user to every object is contained in the later one. This increases security for templates which are installed on the DC Master and DC Slaves where the same behavior is now present (Bug 49734).
  • Attaching UMC policies during rejoin failed because the machine account credentials were used. Now the Administrator credentials are used again (Bug 49592).
  • Situations where operations are performed during a restart of the OpenLDAP server will trigger a reconnection in the uldap.py utilities (Bug 47926).

§6.6. System services

§6.6.1. PostgreSQL

  • The univention-service definition has been corrected and split into two services for PostgreSQL 9.4 and PostgreSQL 9.6 (Bug 42241).

§6.6.2. SAML

  • Invalid default values for the pre existing service provider LDAP entries have been repaired (Bug 50177).
  • The package has been adjusted for the update to simplesamlphp version 1.16.3 (Bug 48961).

§6.6.3. Dovecot

  • Fix UCR template for SSL certificate Univention Configuration Registry variable mail/dovecot/ssl/cafile (Bug 50105).

§6.6.4. Postfix

  • The postfix service can be managed via the System Services UMC module again (Bug 42241).

§6.6.5. RADIUS

  • Fix that the listener module wasn't shown as initialized (Bug 48886).
  • Improve warning for missing sambaNTPassword attribute (Bug 49499).
  • Use UCR port configuration for IPv6 RADIUS-server (Bug 49858).
  • The radius authentication performance has been improved. This should be especially noticeable in large environments (Bug 50006).

§6.6.6. Kerberos

  • pam_krb5 now strips passwords at 1024 characters. This prevents denial of service attacks when authenticating with very long passwords when pam_krb5 would hang in the hash generation of the password (Bug 49740).

§6.6.7. PAM / Local group cache

  • pam_unix now strips passwords at 512 characters. This prevents denial of service attacks when authenticating with very long passwords when pam_unix would hang in the hash generation of the password. https://github.com/linux-pam/linux-pam/issues/118 (Bug 49741).
  • Disable PAM module systemd by default. It can be re-enabled by setting the Univention Configuration Registry variable pam/session/systemd to true (Bug 49910).
  • A locking mechanism for ldap-group-to-file.py has been implemented so that it is ensured the process only runs once at a time (Bug 35173).

§6.6.8. Other services

  • The new Univention Configuration Registry variable appcenter/docker/compose/network is now included in the firewall rules; MySQL connections are allowed from this subnet. It is used by the App Center when installing certain Apps (Bug 49055).
  • Restarting, starting and stopping of various services has been fixed (Bug 42241).

§6.7. Virtualization

§6.7.1. UCS Virtual Machine Manager (UVMM)

  • The error handling in case of connection loss has been enhanced. The amount of log messages has been reduced to decrease log size (Bug 49737).
  • The CPU model can now be configured for each Virtual Machine (Bug 49695).
  • It is now possible to always start Virtual Machines automatically on host startup via the UMC module (Bug 28771).
  • The LDAP attribute univentionVirtualMachineProfileCPUModel has been added to the schema and the UDM module uvmm/profile (Bug 49695).

§6.8. Services for Windows

§6.8.1. Samba

  • The package now uses dh_python2 instead of python-support. Therefore python modules are installed into /usr/lib/python2.7/dist-packages/univention/ (Bug 49177).
  • The Samba 4 service can now be managed via the System Services UMC module (Bug 42241).

§6.8.2. Univention AD Takeover

  • Fixes GPO link synchronization during AD-Takeover (Bug 44278).

§6.8.3. Univention S4 Connector

  • Fix regression in UCS 4.4-2 erratum 239 which caused the univention-service file to be not installed any more (Bug 50098).
  • Fix a traceback observed in CI tests, where a computer object had already been purged in OpenLDAP and the connector tried to apply the echo operation for a prior modification in OpenLDAP (Bug 49959).
  • Avoid a traceback in case GPO deletes get synchronized to Samba/AD and the entryUUID of a sub-object is unknown (Bug 49956).
  • Fixed typo in log message (Bug 49918).
  • Stop adding an unlimited number of lock entries for the same object (Bug 49459).
  • The file /etc/univention/connector/s4/localmapping.py is now included in mapping.py to allow adjusting the mapping dynamically. It may contain a Python function mapping_hook(s4_mapping) which can return a modified mapping (Bug 48410).
  • Unused code has been removed (Bug 43068).
  • Fixed access to undefined variable in the sync_krbgt script (Bug 36633).
  • A reject is prevented when trying to add a group which is already removed in UCS (Bug 49850).
  • Samba 4.9 no longer allows the removal of the dBCSPwd (NTLM hash) attribute. The S4 connector now respects this (Bug 49905).
  • These additional attributes are now synchronized between UDM/OpenLDAP and Samba/AD: unixhome, employeeType, employeeNumber, loginShell, title, gidNumber, uidNumber, departmentNumber, roomNumber, jpegPhoto, userCertificate, initials, physicalDeliveryOfficeName, postOfficeBox, preferredLanguage (Bug 50033, Bug 49092). The synchronization of user attributes can now be switched on and off via the new Univention Configuration Registry variable connector/s4/mapping/user/attributes/ignorelist. The synchronization of these attributes is deactivated for updates.
  • Objects containing a ? character in their DN could not be synchronized due to a decoding error. The synchronization works now (Bug 49865).
  • The script remove_ucs_rejected.py has been repaired. It has been broken via UCS 4.4-2 erratum 155 (Bug 26501).

§6.8.4. Univention Active Directory Connection

  • Update links in the UMC to UCS 4.4 documentation (Bug 48027).
  • The scripts remove_ucs_rejected.py and remove_ad_rejected.py now escape SQL syntax (Bug 49640).

§6.9. Other changes