Der Domain Join Assistant für Univention Corporate Server (UCS) bindet Ubuntu- und viele auf Ubuntu basierende Systeme wie Linux-Mint-Clients automatisch in eine UCS-Domäne ein, sodass die händische Konfiguration für Administratoren entfällt. Benutzer*innen können sich anschließend mit ihren UCS-Zugangsdaten am Ubuntu-Desktop anmelden – und zwar an beliebigen Clients in der Domäne.
Das Werkzeug bietet eine grafische Schnittstelle und ein eigenes Kommandozeilentool für die Steuerung auf der Konsole oder im Terminal. Wir haben gerade eine neue Version des Domain Join Assistant veröffentlicht, die aktuelle Ubuntu- und Linux-Mint-Versionen unterstützt und neue Features und Funktionen sowie Verbesserungen unter der Haube enthält. In diesem Artikel möchte ich kurz erklären, wie das Tool arbeitet und die wichtigsten Neuerungen vorstellen.

Wie arbeitet der Domain Join Assistant für die Einbindung von Ubuntu- und Linux-Mint-Clients?

Nachdem Sie den Domain Join Assistant auf dem jeweiligen Client installiert haben (Paket univention-domain-join aus dem Univention-PPA), öffnen Sie die grafische Oberfläche auf dem Ubuntu-/Mint-Desktop über das jeweilige Startmenü und authentifizieren sich mit Ihren Benutzerdaten.

Screenshot: Univention Domain Join Assistant Interface

Im sich öffnenden Dialog geben Sie ins erste Feld die IP-Adresse des UCS-Servers oder den Namen der UCS-Domäne ein, tragen dann die Zugangsdaten des Administrator-Accounts in den beiden Feldern darunter ein und klicken auf Join.
Nach einer kurzen Wartezeit und einem Reboot des Clients ist die Einrichtung abgeschlossen. Benutzer*innen können sich anschließend am Login-Manager mit dem Benutzernamen und Passwort der UCS-Domäne anmelden.

Der Domain Join Assistant erledigt im Hintergrund die folgenden Dinge:

  • Er erzeugt ein LDAP-Objekt im UCS-Verzeichnisdienst für den Ubuntu-/Mint-Computer.
  • Er konfiguriert die DNS-Einstellungen des Clients, falls gewünscht.
  • Er konfiguriert den Authentifizierungsdienst Kerberos.
  • Er nimmt Änderungen am Login-Manager vor, falls nötig.
  • Er konfiguriert die Authentifizierung für Benutzer*innen mittels PAM (Pluggable Authentication Modules).
  • Er richtete den SSSD (System Security Services Daemon) ein.

Die wichtigsten Neuerungen: Python 3 und Zuweisung auch an DC-Slave-Instanzen für verteilte Netzwerkszenarien

Der neue Domain Join Assistant ist in Python 3 implementiert, der Standardversion unter aktuellen Linux-Distributionen. Wir haben die komplette Codebasis angepasst und den Wechsel von Python 2 vollzogen.
In früheren Versionen hat das Werkzeug den DNS-Server automatisch eingerichtet und dazu den Netzwerk-Manager der jeweiligen Distribution so angepasst, dass der DC Master der primäre Nameserver war – damit wird sicher gestellt, dass ein UCS als DNS Server genutzt wird und damit alle z. B. für Kerberos benötigten DNS-Einträge vorhanden sind. Diese automatische DNS-Konfiguration entfällt nun, es sei denn, Administratoren setzen ein Häkchen bei der Option oder rufen das Kommandozeilentool mit dem Parameter --force-ucs-dns auf. Administratoren können damit wie gewohnt den DNS Server per DHCP verteilen – auch hier empfehlen wir, UCS-Systeme zuzuweisen.
Außerdem ist es jetzt möglich, im Dialog des Join Assistenten die IP-Adresse einer DC-Slave-Instanz anzugeben und darüber der Domäne beizutreten; vorher war das nur über den DC Master möglich. Das gilt auch für UCS@school-Umgebungen: Admins können jetzt im Domain Join Assistant die IP-Adresse z. B. eines Schul-Slaves benennen. Damit ist der Assistant deutlich flexibler geworden und unterstützt mehr Netzwerk-Szenarien in verteilten Umgebungen. Es ist jetzt deutlich leichter, Ubuntu- und Mint-Clients an Schulstandorten auszurollen. Bitte beachten Sie aber, dass wir Ubuntu nicht vollumfänglich in UCS@school-Umgebungen unterstützen, vor allem nicht im Modul Computerraum.

Unterstützte Ubuntu-/Linux-Mint-Versionen und Desktops

Der Fokus bei der Entwicklung des Ubuntu Join Assistent liegt auf der Unterstützung von Ubuntu LTS Versionen, für die er seit Ubuntu 14.04 verfügbar ist. Die in diesem Artikel beschriebenen Neuerungen wurden für Ubuntu Version 20.04 veröffentlicht. Die genaue Liste der getesteten, Ubuntu basierenden Systeme befindet sich im Github Repository.
Der Univention Domain Join bietet Support für GNOME und Unity. Wer andere Desktopumgebungen auf den Clients einsetzt, kann die Einrichtung der jeweiligen Login-Manager überspringen und dazu das Kommandozeilentool univention-domain-join-cli mit dem Parameter --skip-login-manager aufrufen.
Eine Installationsanleitung für den Domain Join Assistant und das Kommandozeilentool haben wir im Github-Repository veröffentlicht.

Wir freuen uns über Feedback in Form eines Kommentars – oder diskutieren Sie mit uns im Univention Forum.

UCS Core Edition jetzt kostenfrei einsetzen!

Zum Downloadbereich
Ingo Steuwer

Ingo Steuwer beschäftigt sich seit 1999 mit Linux und ist seit 2004 bei Univention. Als Head of Product Management liegt sein Fokus auf der Weiterentwicklung von UCS.

Was ist Ihre Meinung? Hinterlassen Sie einen Kommentar!

Kommentare

  1. „Der Univention Domain Join bietet Support für GNOME und Unity. “

    Linux Mint nutzt ja Cinnamon (basiert auf Gnome, ist aber nicht Gnome). Aber weiter oben schreiben Sie, dass es für Mint funktioniert.

    Funktioniert nun mit Linux Mint alles oder nicht?

    Und das ist komisch formuliert: „kann die Einrichtung der jeweiligen Login-Manager überspringen und dazu das Kommandozeilentool univention-domain-join-cli mit dem Parameter –skip-login-manager aufrufen.“

    und -> bzw.

    Antworten
  2. Hallo,
    danke für die Verständnisfragen!

    Der Domain Join ist getestet mit Standard Ubuntu (Gnome) und Linux Mint. Für die Konfiguration ist wichtig, welcher Login Manager verwendet wird – das ist in beiden Fällen der von Gnome, auch wenn dann unter Mint als Desktop kein reines Gnome verwendet wird.

    Bzgl. der Formulierung: gemeint ist, das der Kommandozeilen-Parameter angegeben werden kann, wenn der Login Manager nicht konfiguriert werden soll.

    Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert