Das zentrale Management von heterogenen Netzwerken ist eine der Stärken von UCS. Von Anfang an war es unser Ziel, eine Plattform zu kreieren, die eine Brücke zwischen den etablierten Standards von Linux/Unix und Microsoft/Windows schlägt, so dass Nutzer aus beiden Welten gleichermaßen profitieren können. Aber wie genau funktioniert dieser Brückenschlag, oder genauer die Synchronisation zwischen OpenLDAP mit den von Linux und Unix Clients bevorzugten Daten, und Samba 4 als Active Directory kompatiblem Service?

Ich möchte Ihnen in diesem Artikel die Unterschiede kurz aufzeigen und erklären, auf welche Technologien wir in UCS gesetzt haben, um den unterschiedlichen Client-Welten den jeweils erwarteten Verzeichnsdienst zur Verfügung zu stellen. Dabei werde ich einen Blick werfen auf den Replikationsprozess via Listener und Notifier für OpenLDAP, auf die DRS-Replikation für Active Directory und den „Univention S4 Connector“, der zwischen Samba 4 und OpenLDAP synchronisiert.

Zwei auf einen Streich – Linux und Windows Systeme parallel managen

Sie möchten ein Windows System in einer UCS-Domäne verwalten? Kein Problem, denn UCS bietet mit der Samba Software Suite Active Directory kompatible Domänendienste an, mit denen Sie einen kompatiblen Ersatz für den Microsoft Windows Domaincontroller bekommen.

Damit Sie Ihre Linux-Clients und -Server und die darauf aufsetzenden Services und gleichzeitig Ihre Windows-Systeme und deren Services managen können, richten Sie auf Ihrem UCS-System neben dem dort vorhandenen OpenLDAP-Verzeichnisdienst noch einen zweiten, AD-kompatiblen Verzeichnisdienst ein. Dieser AD-kompatible Samba-Verzeichnisdienst belegt die Standardports für LDAP 389 und 636 – die von Windows-Systeme als Active Directory-Verzeichnisdienst angesprochen werden. Der UCS OpenLDAP-Verzeichnisdienst verwendet stattdessen die Ports 7389 und 7636. Die (Um-)Konfiguration des verwendeten Ports ist bei OpenLDAP-Clients normalerweise recht einfach möglich, bei UCS-Systemen ist dies bereits automatisch der Fall.

Nun haben wir also einen Verzeichnisdienst für die Linux-Umgebung (OpenLDAP), und einen für die Windows-Umgebung (Samba 4). An dieser Stelle spielt UCS mit der automatischen Synchronisation zwischen beiden Verzeichnisdiensten seine volle Stärke aus. Die Synchronisation erfolgt mit dem von Univention entwickelten „Univention S4 Connector“, der bei relevanten Änderungen in einem der beiden Verzeichnisdienste die Anpassungen sofort in den jeweils anderen Verzeichnisdienst übernimmt, so dass beide Systeme immer über denselben aktuellen Informationsstand verfügen und die beiden Verzeichnisdienste als eine gemeinsame Domäne fungieren können.

Samba 4 übernimmt in diesem Szenario den Kerberos-Dienst und stellt seinen Verzeichnisdienst als DNS-Backend für den Nameserver ISC Bind bereit – beide Services sind essentiell für einen vollwertigen Active Directory-Ersatz.

Wie funktioniert nun die Replikation?

Die Replikation von Verzeichnisdiensten auf andere Server-Systeme bietet Ihnen einige wichtige Vorteile, der wichtigste ist die so mögliche Lastverteilung und Redundanz. Während für OpenLDAP ein hierarchisches Replikationsmodell umgesetzt ist, erfolgt die Replikation in einem Active Directory (und damit natürlich auch bei Samba AD Domaincontrollern) als sog. Multi-Master-Replikation. Das bedeutet, dass jeder Domaincontroller von und mit jedem anderen Domaincontroller replizieren kann. Als technische Komponente kommt hier der sog. Directory Replication Service (DRS) zum Tragen.

Eine Multi-Master-Replikation ermöglicht unter anderem, dass eine Änderung an jedem beliebigen Domaincontroller vorgenommen werden kann. Gleichzeitig bringt sie aber auch gewisse Nachteile mit sich. So kann zum Beispiel eine selektive Replikation nicht so unkompliziert umgesetzt werden. Auch skaliert eine Multi-Master-Replikation weniger gut, da jeder Domaincontroller mit jedem anderen Domaincontroller kommunizieren muss und alleine dadurch eine nicht unerhebliche Last auf den Systemen und auf der Netzwerkebene erzeugt wird. Für diesen Fall bietet Active Directory mit seinem Standort („Site“-)Konzept aber Lösungsmöglichkeiten.


LDAP Replikation

Erfahren Sie mehr über selektive Replikation in dem Artikel:

Ausfallsicherheit und Lastverteilung durch LDAP-Replikation


Putting the pieces together

Wir haben jetzt die wichtigsten Bausteine für unsere Repliaktion zusammen: eine hierarchische Replikation über Listener/Notifier für OpenLDAP, Multi-Master-Replikation über DRS für das Active Directory und den „Univention S4 Connector“, der zwischen beiden Welten synchronisiert.Letzterer ist zwar auf allen UCS-Domänencontrollern installiert, aber immer nur auf einem Controller aktiv. Dies ist in der Regel das erste UCS-System, auf dem Samba als Active Directory kompatibler Domaincontroller installiert wurde. Empfehlenswert ist es, hierfür den UCS DC Master zu verwenden.

Änderungen, die Sie über die webbasierte Univention Management Console (UMC) vornehmen, werden zunächst im OpenLDAP gespeichert und falls relevant, über den Univention Listener/Notifier-Mechanismus auf die übrigen UCS-Systeme repliziert. Parallel synchronisiert der Univention S4 Connector die relevanten Änderungen in den Samba-Verzeichnisdienst, wo sie wiederum über DRS an alle übrigen Samba-AD-Server repliziert werden.Dieser Weg funktioniert auch in die andere Richtung: Ändert zum Beispiel ein Nutzer sein Passwort an seinem Windows-Client, wird diese Änderung als Erstes gegen einen der Samba AD Domaincontroller vorgenommen. Dieser repliziert nun per DRS u. a. zum UCS DC Master. Von dort synchronisiert der Univention S4 Connector die Änderung der Passwort-Attribute (Hash, Laufzeit usw.) nach OpenLDAP, von wo die Information per Listener/Notifier in die übrigen OpenLDAP-Instanzen weitergegeben wird. Dieses Szenario funktioniert auch, wenn mit den Windows Remote Server Administration Tools (RSAT) Bspw. Benutzer oder Gruppen angelegt oder geändert werden.Mit dem Prozess, Änderungen an einem Verzeichnisdienst sofort in einen weiteren Verzeichnisdienst und dessen Repliken zu übertragen, bietet UCS die Möglichkeit, auch große, heterogene IT-Infrastrukturen einfach und zentral zu verwalten.

Ergebnis: Single Administration & heterogene Services

Auf Basis der hier beschriebenen Mechanismen gelingt es die unterschiedlichen Services unter einem Single Point of Administration zusammen zu führen – der Univention Management Console als Webinterface zum Verzeichnisdienst bzw. dessen APIs zur Automatisierung. So entsteht die Grundlage für Flexibilität und Vielfältigkeit in der Unternehmens-IT ohne den Mehraufwand paralleler Administration.

Ich hoffe die Informationen in diesem Artikel geben einen guten Überblick über die Architektur der Verzeichnisdienste von UCS. Wenn Sie Fragen zum Artikel haben, nutzen Sie gerne das Kommentarfeld unten oder unser Nutzerforum unter help.univention.com.

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. Vielen Dank für die übersichtliche Darstellung der komplexen Thematik.
    Würde man aber nicht durch den alternativen Ansatz den SAMBA-LDAP-Server direkt als Backend für die UMC zu verwenden Komplexität aus dem System nehmen?
    Hierfür würde das SMABA-LDAP-Directory mittels einer Schema-Erweiterung mit den von der UMC benötigten LDAP-Elementen ausgestattet. LDAP-Zugriffe der UMC könnten dann direkt auf dem SAMBA-LDAP-Directory stattfinden. Dies hat natürlich einen Umstieg von OpenLDAP als LDAP-Backend auf SAMBA zu Folge. Hätte aber unter Anderem den Vorteil, dass nur noch ein Replikations-Mechanismus (DRS) unterstützt werden muss.

    Antworten
  2. Hallo,

    vielen Dank für das Feedback!

    Wir haben uns bei der Entscheidung für die aktuelle Implementierung auch eine leichtgewichtigere Architektur gewünscht – die bidirektionale Synchronisation von Datenbanken (hier: Verzeichnisdiensten) ist immer eine aufwändige Implementierung. Leider sprachen einige Punkte dagegen:

    * Architektur: Es gibt viele UCS Projekte, die kein Samba Service nutzen oder brauchen, und die mit der Active Directory-Kompatibilität einhergehenden Bedingungen an DNS und Kerberos vermeiden wollen.
    * Flexibilität: Samba verhält sich wie ein Active Directory – die teilweise spezielle Sicht auf die Eigenschaften von Nutzern und Rollen/Gruppen ist nicht in allen Projekten gewünscht. Auch fehlten Samba zu Beginn der Integration in UCS entscheidende Funktionen u.a. bei der Abbildung von Access Control Lists. OpenLDAP ist hier deutlich flexibler konfigurierbar.
    * Skalierbarkeit: Insbesondere zum Zeitpunkt der Einführung von Samba war es nicht annähernd so skalierbar wie OpenLDAP, auch heute gibt es mit der Standard-Datenbankkonfiguration noch deutliche Unterschiede bei Performance und maximaler Datenbank-Größe.

    Viele Grüße
    Ingo Steuwer

    Antworten

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