LDAP/AD-Integration

Dieses Kapitel beschäftigt sich mit der Anbindung von LDAP-kompatiblen Servern an Veyon. Im Folgenden wird nur der Oberbegriff LDAP verwendet und meint damit alle LDAP-kompatiblen Produkte bzw. Technologien wie OpenLDAP, Samba und Active Directory. Über die LDAP-Integration ist es möglich, die in den meisten Umgebungen bereits bestehenden Informationen über Benutzer, Benutzergruppen, Computer sowie Standorte zu nutzen, anstatt diese manuell in der Veyon-Konfiguration nachzubilden. Sobald die Konfiguration vorgenommen wurde, kann der Veyon Master die anzuzeigenden Standorte und Computer direkt aus dem Verzeichnisdienst abrufen. Zusätzlich können LDAP-Benutzer und -Benutzergruppen als Basis für die Computerzugriffskontrolle genutzt werden.

Die Konfiguration der LDAP-Integration erfolgt über die Konfigurationsseite LDAP im Veyon Configurator. Diese Seite gliedert sich in verschiedene Unterseiten für Grundeinstellungen, Umgebungseinstellungen, Erweiterte Einstellungen sowie Integrationstests.

Grundeinstellungen

Die Grundeinstellungen betreffen alle grundlegenden Parameter für den Zugriff auf einen LDAP-Server. Sie sind in jedem Fall zwingende Voraussetzung für eine korrekt arbeitende LDAP-Integration.

Allgemein

LDAP-Server und Port
Hier muss die Adresse des LDAP-Servers (Name oder IP-Adresse) eingetragen werden. Wenn ein anderer Port als der Standard-LDAP-Port 389 zum Einsatz kommt, muss der Port-Parameter entsprechend angepasst werden.
Anonymer Bind / Bind-Zugangsdaten verwenden
Je nach Umgebung und Konfiguration des LDAP-Servers sind LDAP-Abfragen entweder als anonymer Benutzer oder nur mit Benutzername und Passwort möglich. Wenn der Serverzugriff ein Benutzername und Passwort erfordert, muss die Option Bind-Zugangsdaten aktiviert werden und die Zugangsdaten müssen in den zwei folgenden Eingabefeldern eingetragen werden. Andernfalls kann die Vorgabeoption Anonymer Bind verwendet werden.
Bind-DN
Beim Bind-DN handelt es sich um den Benutzername, mit dem eine Anmeldung am Server durchgeführt wird, um anschließend LDAP-Operationen durchzuführen. Das Format hängt allerdings stark vom LDAP-Server und dessen Konfiguration ab. Mögliche Formate sind User, DOMAIN\User oder cn=User,…,dc=example,dc=org.
Bind-Passwort
Zusätzlich zum Bind-DN muss das zugehörige Passwort eingetragen werden.

Über die Schaltfläche Testen kann überprüft werden, ob der Serverzugriff mit den eingetragenen Parametern funktioniert.

Hinweis

Veyon führt ausschließlich lesende LDAP-Operationen durch. Es kann daher als zusätzliche Sicherheitsmaßnahme ein dedizierter Benutzer angelegt werden, der nur Lesezugriff auf das LDAP-Verzeichnis hat, z. B. „Veyon-LDAP-RO“. Für diesen Benutzer kann ggf. weiterhin der Zugriff auf relevante Attribute eingeschränkt werden.

Verbindungssicherheit

Veyon kann verschlüsselte Verbindungen zum LDAP-Server aufbauen. Hierfür stehen Einstellungen im Abschnitt Verbindungssicherheit zur Verfügung.

Verschlüsselungsprotokoll

Es kann zwischen den Verschlüsselungsprotokollen Keine, TLS und SSL gewählt werden. Der Einsatz des modernen TLS-Protokolls wird empfohlen.

Vorgabe: Keine

TLS-Zertifikatsüberprüfung

Diese Einstellung legt fest, wie das Zertifikat des LDAP-Servers beim Aufbau einer verschlüsselten Verbindung überprüft werden soll. Mit der Voreinstellung Systemstandard wird abhängig vom Betriebssystem versucht, das Zertifikat anhand der systemweit installierten Stammzertifikate zu überprüfen. Der Windows-Zertifikatsspeichter wird hierbei nicht berücksichtigt, so dass ggf. eine eigene CA-Zertifikatsdatei hinterlegt werden muss. Mit der Einstellung Nie wird das Serverzertifikat überhaupt nicht überprüft, was jedoch Man-in-the-middle-Angriffe ermöglicht und daher nur in Ausnahmefällen verwendet werden sollte. Die Einstellung Benutzerdefinierte CA-Zertifikatsdatei sorgt dafür, dass die Zertifikatsüberprüfung anhand einer angegebenen CA-Zertifikatsdatei durchgeführt wird.

Vorgabe: Systemstandard

Benutzerdefinierte CA-Zertifikatsdatei
Beim Einsatz einer eigenen Zertifizierungsstelle (CA) kann es notwendig sein, deren Zertifikat im Format einer PEM-Datei zu hinterlegen, damit Veyon das Zertifikat des LDAP-Servers überprüfen kann.

Base-DN

Über den Base-DN wird die Basisadresse im Verzeichnis festgelegt, unter der alle zu verwendenden Objekte abgelegt sind. Diese ergibt sich üblicherweise aus der DNS- oder AD-Domäne (siehe auch RFC 2247).

In den meisten Fällen kommt ein fester Base-DN zum Einsatz, so dass muss die Vorgabeoption Fester Base-DN aktiviert werden und der Base-DN in das Eingabefeld eingetragen werden muss. Über die Schaltfläche Testen kann überprüft werden, ob die Einstellung korrekt ist und Einträge gefunden werden können.

Soll eine generische Veyon-Konfiguration beispielsweise an mehreren Standorten mit unterschiedlichen Base-DNs eingesetzt werden, kann Veyon so konfiguriert werden, dass der Base-DN immer dynamisch über LDAP-Naming-Contexts abgefragt wird. Hierfür muss die gleichnamige Option aktiviert werden und ggf. das Naming-Context-Attribut angepasst werden. Über die Schaltfläche Testen kann überprüft werden, ob ein Base-DN ermittelt werden konnte.

Nach dem Import einer generischen Veyon-Konfiguration ohne festen Base-DN ist es zudem über die Kommandozeilenschnittstelle möglich, den Base-DN zu ermitteln und in die lokale Konfiguration zu schreiben.

Umgebungseinstellungen

Nachdem die Grundeinstellungen konfiguriert und getestet wurden, können nun die umgebungsspezifischen Einstellungen vorgenommen werden. Über diese Einstellungen wird festgelegt, in welchen Bäumen sich Objekte befinden und wie bestimmte Objektattribute heißen. Anhand dieser Parameter kann Veyon alle benötigten Informationen aus dem LDAP-Verzeichnis abfragen.

Objektbäume

Objektbäume sind Organisations- bzw. Struktureinheiten, in denen bestimmte Typen von Objekten (Benutzer, Gruppen, Computer) abgelegt sind. Die jeweiligen CNs (Common Names) oder OUs (Organizational Units) müssen ohne Base-DN-Teil in den entsprechenden Eingabefeldern eingetragen werden. Neben jedem Eingabefeld stehen Schaltflächen zum Öffnen von Suchdialogen sowie zum Testen der jeweiligen Einstellung zur Verfügung.

Benutzerbaum
Hier muss der LDAP-Baum (ohne Base-DN) eingetragen werden, in dem sich die Benutzerobjekte befinden, z.B. OU=Users oder CN=Users.
Gruppenbaum
Hier muss der LDAP-Baum (ohne Base-DN) eingetragen werden, in dem sich die Gruppenobjekte befinden, z.B. OU=Groups oder CN=Groups.
Computerbaum
Hier muss der LDAP-Baum (ohne Base-DN) eingetragen werden, in dem sich die Computerobjekte befinden, z.B. OU=Computers oder CN=Computers.
Computergruppenbaum
Wenn sich Computergruppen in einem anderen Baum als die regulären (Benutzer-)Gruppen oder in einem Unterbaum befinden, kann der entsprechende LDAP-Baum hier eingetragen werden. Andernfalls wird der Gruppenbaum verwendet, um auch Computergruppen abzufragen und ggf. über einen spezifischen Objektfilter zu filtern.
Rekursive Suchoperationen in Objektbäumen durchführen

Über diese Option kann gesteuert werden, ob Objekte rekursiv abgefragt werden sollen. Die Suche findet dann nicht nur im festgelegten Baum sondern auch in allen vorhandenen Unterbäumen statt.

Vorgabe: deaktiviert

Hinweis

Sind Objekte eines Typs in verschiedenen Objektbäume abgelegt (z. B. Benutzer sowohl in CN=Teachers als auch CN=Students), kann der Parameter für den entsprechenden Objektbaum leer gelassen und die Option Rekursive Suchoperationen in Objektbäumen durchführen aktiviert werden. Es wird dann eine rekursive Suche im gesamten LDAP-Verzeichnis ausgehend vom Base-DN durchgeführt. In diesem Fall sollten jedoch unbedingt Objektfilter für den jeweiligen Objekttyp festgelegt werden.

Objektattribute

Damit Veyon den abgefragten Objekten die benötigten Informationen entnehmen kann, müssen die Namen einiger Objektattribute konfiguriert werden, da sich diese je nach Umgebung und LDAP-Server zum Teil erheblich unterscheiden. Hinter jedem Eingabefeld stehen eine Schaltflächen zum Auswählen des Attributes eines bestehenden Objekts sowie zum Überprüfen des jeweiligen Attributnamens zur Verfügung.

Attribut Benutzeranmeldename
Dieses Attribut muss den Anmeldenamen eines Benutzers enthalten. Das Attribut wird verwendet, um das LDAP-Benutzerobjekt zu ermitteln, das zu einem bestimmten Benutzername gehört. Im OpenLDAP-Umfeld kommt oft der Attributname uid zum Einsatz, während bei Active Directory der Name sAMAccountName üblich ist.
Attribut Gruppenmitglied
Über dieses Attribut werden in Gruppenobjekten die Gruppenmitglieder aufgeführt. Das Attribut wird verwendet, um die Gruppen zu ermitteln, in denen ein Benutzer Mitglied ist. Je nach Konfiguration wird das Attribut auch für die Zuordnung von Computern zu Standorten genutzt. Im OpenLDAP-Umfeld kommt oft der Attributname member zum Einsatz, während bei Active Directory der Name memberUid üblich ist.
Attribut Computeranzeigename

Der Inhalt dieses optionalen Attributs wird verwendet, um den Namen eines Computers zu ermitteln, der im Veyon Master angezeigt wird. Wenn das Feld frei gelassen wird, wird stattdessen der Common Name (cn) verwendet.

Vorgabe: cn

Attribut Computername
Hier muss der Name eines Attributs eingetragen werden, in dem der DNS-Name des Computers gespeichert ist. Das Attribut wird verwendet, um das LDAP-Computerobjekt zu ermitteln, das zu einem bestimmten Computer-Hostname gehört. Im OpenLDAP-Umfeld kommt oft der Attributname name zum Einsatz, während bei Active Directory der Name dNSHostName üblich ist.
Hostnamen sind als vollqualifizierte Domainnamen gespeichert (FQDN, z.B. myhost.example.org)

Diese Option legt fest, ob für die Zuordnung von Computernamen zu LDAP-Computerobjekten der vollqualifizierte Domainname (FQDN) verwendet werden soll. Wenn die Computernamen im LDAP-Verzeichnis ohne Domain-Anteil gespeichert sind, muss diese Option deaktiviert, andernfalls aktiviert werden.

Vorgabe: deaktiviert

Attribut Computer-MAC-Adresse
Zusätzlich zum Computername sind in einigen Umgebungen auch die MAC-Adressen von Computern im LDAP-Verzeichnis hinterlegt, beispielsweise wenn der DHCP-Server ebenfalls auf das LDAP-Verzeichnis zugreift. Soll die Veyon-Funktion zum Einschalten von Computern via Wake-on-LAN verwendet werden, muss hier der entsprechende Attributname eingetragen werden, da die MAC-Adresse für diese Funktion benötigt wird. Typische Attributnamen sind hwAddress oder dhcpAddress.

Hinweis

In einem Active Directory gibt es standardmäßig kein Attribut, in dem die MAC-Adresse gespeichert ist. Sie müssen daher die MAC-Adresse manuell in einem existierenden ungenutzten Attribut wie wwwHomepage eintragen oder das AD-Schema erweitern. Zusätzlich können Sie Computern Gruppenschreibrechte auf SELF gewähren und mit Hilfe eines PowerShell-Startscripts dafür sorgen, dass die MAC-Adresse des ersten physikalischen Netzwerkadapters von jedem Computer automatisch eingetragen wird.

Attribut Computerstandort
Wenn das LDAP-Schema für Computerobjekte ein spezielles Attribut für die Zuordnung zu einem Standort vorsieht, kann der Attributname an dieser Stelle eingetragen werden. Über die Schaltfläche Testen kann überprüft werden, ob die Computer an einem Standort anhand des konfigurierten Attributs korrekt abgefragt werden können. In den erweiterten Einstellungen kann im Abschnitt Computerstandorte anschließend eingestellt werden, dass das Computerstandortattribut verwendet wird.
Attribut Standortname
Werden Standorte über Computergruppen oder Computercontainer abgebildet, kann statt des Common Names der Gruppen oder Objekte auch der Wert eines bestimmten Attributs als Standortname angezeigt werden. Besitzen beispielsweise Computergruppen ein Attribut name oder description kann in diesen eine aussagekräftige Standortbezeichnung hinterlegt werden und der Attributname an dieser Stelle eingetragen werden.

Erweiterte Einstellungen

Mit den erweiterten Einstellungen kann die LDAP-Integration und die Verwendung der Informationen aus dem LDAP-Verzeichnis an individuelle Bedürfnisse angepasst werden.

Optionale Objektfilter

Mit Hilfe von LDAP-Filtern können die von Veyon verwendeten LDAP-Objekte eingegrenzt werden, wenn beispielsweise Computerobjekte wie Drucker im Veyon Master nicht angezeigt werden sollen. Hinter jedem Eingabefeld steht eine Schaltfläche zum Überprüfen des jeweiligen Objektfilters zur Verfügung.

Die optionalen Filter folgen seit Veyon 4.1 dem üblichen Schema für LDAP-Filter (siehe z. B. RFC 2254 oder Active Directory: LDAP Syntax Filters) wie beispielsweise (objectClass=XYZ).

Filter für Benutzer
Hier kann ein LDAP-Filter für Benutzer eingetragen werden, z. B. (objectClass=person) oder (&(objectClass=person)(objectClass=veyonUser)).
Filter für Benutzergruppen
Hier kann ein LDAP-Filter für Benutzergruppen eingetragen werden, z. B. (objectClass=group) oder (|(cn=teachers)(cn=students)(cn=admins)).
Filter für Computer
Hier kann ein LDAP-Filter für Computer eingetragen werden, z. B. (objectClass=computer) oder (&(!(cn=printer*))(!(cn=scanner*))).
Filter für Computergruppen
Hier kann ein LDAP-Filter für Computergruppen eingetragen werden, z. B. (objectClass=room) oder (cn=Raum*). Wenn Computergruppen als Standorte verwendet werden, können auf diese Weise die angezeigten Standorte eingeschränkt werden.
Filter für Computercontainer
Hier kann ein LDAP-Filter für Computercontainer eingegeben werden, z. B. (objectClass=container) oder (objectClass=organizationalUnit). Wenn Container/OUs als Standorte verwendet werden, können auf diese Weise die angezeigten Standorte eingeschränkt werden.

Abfrageoptionen

Verschachtelte Benutzergruppen abfragen (nur von AD unterstützt)
Wenn Sie verschachtelte Benutzergruppen einsetzen (derzeit nur von Active Directory unterstützt), können Sie diese Option aktivieren, damit Veyon alle (auch indirekte) Gruppen eines Benutzers abfragt. Ist diese Option aktiviert, können Sie zum Beispiel eine Gruppe Veyon Benutzer mit den bestehenden Benutzergruppen Lehrer und IT-Mitarbeiter als Mitglieder anlegen. Die Gruppe Veyon Benutzer kann dann für Zugriffskontrolle-Zwecke verwendet werden.

Identifizierung von Gruppenmitgliedern

Der Inhalt der Gruppenmitgliedsattribute unterscheidet sich in verschiedenen LDAP-Implementierungen. Während im Active Directory der Distinguished Name (DN) eines Objekts im member-Attribut hinterlegt ist, wird bei OpenLDAP meist der Anmeldename eines Benutzers (uid o. ä.) oder der Computername gespeichert. Damit Veyon für die Abfrage von Gruppen eines Benutzers oder Computers den richtigen Wert verwendet, muss hier die passende Einstellung gewählt werden.

Distinguished name (Samba/AD)
Diese Option muss gewählt werden, wenn im member-Attribut einer Gruppe der Distinguished Name (DN) eines Objekts gespeichert wird. Üblicherweise arbeiten Samba- oder AD-Server nach diesem Schema.
Konfiguriertes Attribut für Benutzeranmeldename oder Computerhostname (OpenLDAP)
Diese Option muss gewählt werden, wenn im member-Attribut einer Gruppe der Benutzeranmeldename (Username) oder Computername hinterlegt ist. Üblicherweise arbeiten OpenLDAP-Server nach diesem Schema.

Computerstandorte

Veyon stellt verschiedene Methoden zur Verfügung, um Computerstandorte in einem LDAP-Verzeichnis abzubilden. Im einfachen Fall gibt es für jeden Computerstandort (z.B. Raum) eine Computergruppe, in der sich alle Computer des Standortes befinden. Wenn Computer hingegen in Containern oder Organizational Units (OUs) organisiert sind, können diese übergeordneten Objekte als Standorte verwendet werden. Bei beiden Vorgehensweisen ist keine Anpassung des LDAP-Schemas notwendig. Als dritte Möglichkeit kann auch der Standortname als spezielles Attribut in jedem Computerobjekt hinterlegt sein.

Computergruppen

Mit dieser Option wird festgelegt, dass Computerstandorte über Computergruppen abgebildet werden. Sämtliche Computergruppen werden dann im Veyon Master als Standorte angezeigt. Für jeden Standort werden alle Computer angezeigt, die Mitglied der jeweiligen Gruppe sind. Wenn nicht alle LDAP-Gruppen als Standorte angezeigt werden sollen, muss entweder ein dedizierter Computergruppenbaum konfiguriert werden oder die Computergruppen über einen Computergruppenfilter eingeschränkt werden.

Vorgabe: aktiviert

Computercontainer oder OUs

Diese Einstellung legt fest, dass die Container/OUs, in denen sich Computerobjekte befinden, als Computerstandorte verwendet werden. Container sind solche Objekte, die Computerobjekten im LDAP-Baum übergeordnet sind. Wenn nicht alle Container als Standorte angezeigt werden sollen, kann ein entsprechender Computercontainerfilter eingerichtet werden.

Vorgabe: deaktiviert

Attribut Standort in Computerobjekten

Wenn das LDAP-Schema für Computerobjekte ein spezielles Attribut für die Zuordnung zu einem Standort vorsieht, kann diese Option aktiviert und der Attributname eingetragen werden. Über die Schaltfläche Testen kann überprüft werden, ob die Mitglieder eines Computerstandortes anhand des konfigurierten Attributs korrekt abgefragt werden können.

Vorgabe: deaktiviert

Integrationstests

Mit Hilfe der Integrationstests kann die LDAP-Integration als Ganzes überprüft werden. Über die Schaltflächen können verschiedene Tests durchgeführt werden. Alle Tests sollten erfolgreich sein und gültige Ergebnisse liefern, bevor die LDAP-Anbindung produktiv genutzt wird.

Verwendung von LDAP-Backends

Mit der erfolgreichen Konfiguration der LDAP-Integration können nun die LDAP-Backends aktiviert werden. Hierfür müssen das Netzwerkobjektverzeichnis sowie das Benutzergruppen-Backend für die Computerzugriffskontrolle angepasst werden. Erst mit der Umstellung des Netzwerkobjektverzeichnisses auf LDAP werden im Veyon Master die Standort- und Computerinformationen aus dem LDAP-Verzeichnis verwendet.

Achtung

Nach Umstellung des Backends für die Computerzugriffskontrolle sollten die zuvor konfigurierten Zugriffsregeln unbedingt überprüft werden, da sich die Gruppen- und Standortinformationen ändern und somit die Zugriffsregeln in den meisten Fällen nicht mehr gültig sind oder nicht mehr korrekt verarbeitet werden.

Kommandozeilenschnittstelle

Über die Kommandozeilenschnittstelle von Veyon sind einige LDAP-spezifischen Operationen möglich. Alle Operationen stehen im Modul ldap zur Verfügung. Eine Liste aller unterstützen Befehle wird über veyon-cli ldap help ausgegeben, während befehlsspezifische Hilfetexte über veyon-cli ldap help <command> angezeigt werden können.

autoconfigurebasedn

Mit diesem Befehl kann der verwendete Base-DN automatisch ermittelt und in die Konfiguration fest eingetragen werden. Als Argumente müssen eine LDAP-Server-URL sowie optional ein Naming-Context-Attribut angegeben werden:

veyon-cli ldap autoconfigurebasedn ldap://192.168.1.2/ namingContexts
veyon-cli ldap autoconfigurebasedn ldap://Administrator:MYPASSWORD@192.168.1.2:389/

Hinweis

Sonderzeichen wie @ oder : – vor allem im Passwort – können mit Hilfe der URL-Prozent-Kodierung angegeben werden.

query

Dieser Befehl ermöglicht die Abfrage von LDAP-Objekten (locations, computers, groups, users) und dient in erster Linie der Fehlersuche. Die Funktion kann aber auch zur Entwicklung von Scripten für Systemintegrationsaufgaben hilfreich sein.

veyon-cli ldap query users
veyon-cli ldap query computers