LDAP

ldap.com Logo

LDAP ist ein Kommunikationsprotokoll zur Abfrage von Inhalten und Bearbeitung von Verzeichnissen. („Lightweight Directory Access Protocol“).

Die Verwendung dieses Protokolls in der Mauerseglerei ist im Artikel Active Directory- und LDAP Schnittstellen beschrieben.

Verwendung

LDAP wird verwendet um Daten aus einem Verzeichnis abzufragen oder zu bearbeiten. Ein häufiger Anwendungsfall ist die Authentifizierung von Usern (siehe auch Zentrale Benutzerverwaltung).

LDAP wird sehr häufig in Kombination mit Microsofts Active Directory verwendet, es gibt aber auch ein Standalone LDAP-Verzeichnis.

Begriffe

  • Ein Eintrag (Entry) stellt in einem LDAP-Verzeichnis eine Einheit dar. Ein Eintrag wird durch seinen eindeutigen Namen (Distinguished Name, kurz DN) identifiziert.
  • Attribute sind direkt mit dem Eintrag zusammenhängende Informationen. Eine Organisation könnte zum Beispiel ein LDAP-Eintrag sein. Mit dieser Organisation verknüpfte Attribute können zum Beispiel die Faxnummer, die Adresse usw. sein. Auch Mitarbeiter können Einträge in einem LDAP-Verzeichnis sein. Übliche Attribute für Mitarbeiter sind u.a. Telefonnummern und E-Mail-Adressen.
  • LDIF: Das LDAP-Datenaustauschformat (LDAP Data Interchange Format, LDIF) ist ein ASCII-Textformat für LDAP-Einträge. Dateien, die Daten von einem LDAP-Server importieren oder auf einen LDAP-Server exportieren, müssen im LDIF-Format vorliegen.
  • Ein LDAPSchema definiert die Liste möglicher Typen von Einträgen (die man als Objektklassen bezeichnet) zusammen mit den mit ihnen verknüpften Attributen. Schema-Definitionen werden in Dateien gespeichert. Jeder LDAP-Server hat ein oder mehrere bekannte Standard-Schemas, auf das man immer zurückgreifen kann.

Standalone Server anlegen

Wenn man einen LDAP-Server manuell anlegen möchte folge ich dieser Anleitung: https://plusenergie-blog.de/smart-home/802-1x-mit-freeradius-und-openldap/

Wir gehen hier von einer Debian-Maschine aus.

Erst mal das OpenLDAP-Paket installieren:

apt-get install slapd ldap-utils

Falls die Konfiguration des LDAP-Server (slapd) übersprungen wurde oder was geändert werden muss, einfach den Befehl dpkg-reconfigure slapd ausführen.

Die relevanten Einstellungen für den LDAP-Server sind:
DNS domain name: server.example.org
Organization name: Familie Mustermann
Administrator password: (gut merken!)
Database backend: MDB
Allow LDAPv2 protocol? no

Mit dem Befehl slapcat kann man sich die Konfigurationsdaten anzeigen lassen.

Ich experimentiere gerade mit einem ganz promitiven Basisschema, das an jenes von Univention angelehnt ist. (Anmerkung cn=container)

dn: cn=users,dc=it,dc=mauerseglerei,dc=at
objectClass: organizationalRole
cn: users

dn: cn=groups,dc=it,dc=mauerseglerei,dc=at
objectClass: organizationalRole
cn: groups

Mit folgendem Befehl werden die neuen Einträge angelegt:

ldapadd -x -D cn=admin,dc=it,dc=mauerseglerei,dc=at -W -f base.ldif

Hier ist meine erste experimentelle Person (was man braucht siehe hier: https://tylersguides.com/guides/openldap-how-to-add-a-user/ )

dn: uid=adrian_kowar,cn=users,dc=it,dc=mauerseglerei,dc=at
objectClass: person
objectClass: posixAccount
cn: adrian_kowar
uid: adrian_kowar
sn: 1002
uidNumber: 1002
gidNumber: 1002
homeDirectory: /home/adrian_kowar
loginShell: /bin/bash
gecos: adrian_kowar
userPassword: {crypt}x
EIn sehr verbreitetes Paket

Clients

Die meisten von uns verwendeten Clients sind im Artikel Active Directory- und LDAP Schnittstellen beschrieben. Das unten folgende Beispiel benutzten wir nur um unseren LDAP-Server zur testen.

Linux + LDAP

Auf z.B. dem WordPress-Server habe ich den ldap-client installiert und in der /etc/ldap/ldap.conf die IP-Adresse des UCS hinterlegt.

# See ldap.conf(5) for details
# This file should be world readable but not world writable.

#BASE   dc=example,dc=com
URI     ldap://user.mauerseglerei.at:7389

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

# TLS certificates (needed for GnuTLS)
TLS_CACERT      /etc/ssl/certs/ca-certificates.crt

Test mittels:

ldapsearch -x -D uid=Administrator,cn=users,dc=it,dc=mauerseglerei,dc=at -W uid=Vorname_Nachname

Hierbei ist nach -D die BindDN angegeben und -W ist die Aufforderung nach einer direkten Passwortabfrage. Danach kommt die eigentliche Suche.

Weiterführende Artikel

Security Identifier (SID) 10.7.2022 15:10 by Adrian Kowar Posted in: User-Management Hierbei handelt es sich im eine unter Microsoft Windows etablierte Identifikationsnummer für User und Gruppen. Diese wird in Access Control Lists (ACL) um zu identifizieren wer… Weiterlesen
Authorization-Groups it.mauerseglerei.at 8.7.2022 13:38 by Adrian Kowar Posted in: User-Management Berechtigungsgruppen sind Gruppen innerhalb der Domain "it.mauerseglerei.at", welche User-Groups mit Ressourcen (Dateien, Services,...) verbinden und eine Berechtigung repräsentieren (Lesen, Schreiben,...). Ressourcen Mit zwei oder mehr Buchstaben… Weiterlesen
User-Groups it.mauerseglerei.at 8.7.2022 03:57 by Adrian Kowar Posted in: User-Management Diese User-Groups sind Gruppen innerhalb der Domain "it.mauerseglerei.at", welche User (meist Pendants zu natürlichen Personen, seltener Geräte) und/oder andere User-Groups zusammenfassen. Gestaltung Entsprechend der Gruppen Namenskonvention… Weiterlesen
Groups (IT Domain) 8.7.2022 03:26 by Adrian Kowar Posted in: User-Management Gruppen sind ein nützliches Hilfsmittel bei der Verwaltung von Usern in einer Domain. Gruppen sind Container, die User und/oder andere Gruppen beinhalten. Einsatzzweck Speziell, wenn es… Weiterlesen
Active Directory 7.7.2022 22:08 by Adrian Kowar Posted in: System-Software Logo von Microsofts Active Directory Active Directory (kurz: AD) ist ein Verzeichnisdienst, der ein kommerzielles Produkt von Microsoft ist und als Teil ihrer Windows-Server-Architektur dient. Es… Weiterlesen
Univention Directory Manager (UDM) 24.5.2022 15:54 by Adrian Kowar Posted in: Univention Corporate Server Dies ist ein Kernbestandteil des Univention Corporate Server, der unseren Domain Controller und Directory Service zur Verfügung stellt. Hierzu gehört das Kommandozeilentool udm (siehe http://docs.software-univention.de/handbuch-4.4.html#central:udm.) Anwendungsbeispiel… Weiterlesen
Gruppen Namenskonvention (IT) 9.2.2021 10:44 by Adrian Kowar Posted in: User-Management Hiermit regeln wir, wie wir Gruppen auf unserem zentralen Userverwaltungssystem benennen. Bestandteile Zulässige Zeichen: Wir verwenden nur ASCII-Buchstaben, Ziffern, Unterstruch und (zu klären) Minus Trennzeichen: UnterstrichDieser… Weiterlesen
Active Directory Einbindung von Linux mit winbind 19.12.2020 22:32 by Adrian Kowar Posted in: System-Software Dieser Artikel klärt, wie ein Linux-Computer (Debian) ins Active directory eingebunden werden kann. Dies ist mit winbind und sssd möglich. Während sssd eine modene Lösung ist… Weiterlesen
TrueNAS 5.12.2020 01:55 by Adrian Kowar Posted in: Server-Software TrueNAS TrueNAS ist ein dediziertes Fileserver-Betriebssystem basierend auf FreeBSD, das von Haus aus und ohne Lizenz-Konflikte das Filesystem ZFS verwendet. Wir verwenden dieses System auf unserem… Weiterlesen
Dioptas (NAS) 3.12.2020 16:48 by Adrian Kowar Posted in: Server Der Host Dioptas fungiert als dedizierter Fileserver auf der Basis von TrueNAS mit einer Nutzkapazität von ca. 14 Terabyte. Er vereint die Datensicherheit von ZFS, User… Weiterlesen

Zuletzt bearbeitet am 7. Juli 2022 von Adrian Kowar

Schreibe einen Kommentar