Unterabschnitte

Das LDAPclient-Paket

Dieses Paket wurde auf Basis des LDAPserver-Paketes, welches aus dem openldap-Paket von Jens Vehlhaber (E-MAIL jvehlhaber@buchenwald.de) hervor gegangen ist, erstellt und wird von Jürgen Edner (E-MAIL juergen@eisfair.org) weiter entwickelt. Es enthält einzig die zugehörigen LDAP-Client-Programme.

Die Einleitung

In diesem Paket wurden die für den Zugriff auf einen LDAP-Server (Lightweight Directory Access Protocol) Server benötigten Programme zusammengefaßt.

Die Funktionen

Das LDAPclient-Paket besteht aus folgenden Komponenten:

Die Voraussetzungen

Dieses Paket benötigt zur korrekten Funktion zwingende die installierten Pakete 'Certs' (bei Verwendung von Verschlüsselung), 'Libldap', 'Libsasl', 'Libssl'.

Die Installation

Das LDAPclient-Paket wird über das Setup-Menü installiert. Wird eine ältere Paketversion vorgefunden, so wird diese deinstalliert bevor die neuen Programmdateien installiert werden. Nach Beendigung dieses Schrittes werden die Konfigurationsdateien generiert und alle benötigten Programme gestartet.

Das Menü im Setup-Programm

Das Menü im Setup-Programm ist wie folgt aufgebaut:

Die Menüpunkte dürften selbsterklärend sein, da sie keinerlei weitere Eingaben erwarten. Aus diesem Grund wird auf deren Funktion nicht weiter eingegangen.

Die Änderung der Konfiguration

Die Konfiguration kann über den Menüpunkt 'Edit configuration' geändert werden. Standardmäßig wird der Editor aufgerufen, der in der Environment- Konfiguration über die Variable 'EDITOR' festgelegt wurde. Nachdem der Editor beendet wurde wird abgefragt, ob die Konfiguration aktiviert werden soll. Wird dies bestätigt, werden über ein Skript die Anpassungen umgehend wirksam gemacht.

Die Konfigurationsdatei

In der Konfigurationsdatei, die über das Menü zugänglich ist, sind folgende Parameter vorhanden; wer sie von Hand editieren will findet sie unter /etc/config.d/ldapclient.

Die Parameter

START_LDAPCLIENT

Zur Aktivierung der LDAP-Client-Konfiguration muss diese Variable lediglich auf den Wert 'yes' gestellt werden. Die Einstellung 'no' deaktiviert die Konfiguration.

Gültige Werte: yes, no

Standardeinstellung: START_LDAPCLIENT='no'

LDAPCLIENT_LDAP_HOSTURI

Über diesen Parameter legt man den Hostnamen und TCP-Port des LDAP-Servers fest zu welchem eine Verbindung aufgebaut werden soll.

Gültige Werte: URI und TCP-Port

Beispiel: LDAPCLIENT_LDAP_HOSTURI='ldap://meinserver.local.lan:389'

LDAPCLIENT_LDAP_BASEDC

Über diesen Parameter legt man die Basisdomain des LDAP-Verzeichnisbaums fest.

Gültige Werte: Base Domain Component

Standardeinstellung: LDAPCLIENT_LDAP_BASEDC='privatnet'

LDAPCLIENT_LDAP_BASEDN

Über diesen Parameter wird der Base Distinguished Name des LDAP-Verzeichnisses festgelegt. Dies ist das Wurzelverzeichnis von welchem Suchanfragen etc. gestartet werden.

Gültige Werte: Base Distinguished Name

Standardeinstellung: LDAPCLIENT_LDAP_BASEDN='dc=privatnet,dc=lan'

LDAPCLIENT_LDAP_AUTH

Über diesen Parameter wird festgelegt, ob der LDAP-Client sich bei einem Verbindungsaufbau authentifizieren soll oder nicht.

Gültige Werte: yes, no

Standardeinstellung: LDAPCLIENT_LDAP_AUTH='no'

LDAPCLIENT_LDAP_ADMIN_NAME

Über diesen Parameter wird der Name des LDAP-Administrators festgelegt, welcher zur Authentifizierung am LDAP-Verzeichnisbaum verwendet werden soll.

Gültige Werte: LDAP-Accountname

Standardeinstellung: LDAPCLIENT_LDAP_ADMIN_NAME='ldapadmin'

LDAPCLIENT_LDAP_ADMIN_PASS

Über diesen Parameter kann das Kennwort des LDAP-Administratorkontos festgelegt werden.

Gültige Werte: Kennwort

Standardeinstellung: LDAPCLIENT_LDAP_ADMIN_PASS=''

LDAPCLIENT_CLIENT_CERT_FILE

Optionaler Parameter: Über diesen Parameter legt man den Namen des Client-Zertifikats fest, welches zur Authentifizierung am LDAP-Server verwendet werden soll. Eingegeben werden muss der absolute Pfad zur Datei inklusive des Dateinamens.

Gültige Werte: absoluter Pfad inkl. Dateiname

Standardeinstellung: LDAPCLIENT_CLIENT_CERT_FILE=''

LDAPCLIENT_CLIENT_KEY_FILE

Optionaler Parameter: Über diesen Parameter legt man den Namen der Zertifikatsschlüsseldatei fest, welches zur Authentifizierung am LDAP-Server verwendet werden soll. Eingegeben werden muss der absolute Pfad zur Datei inklusive des Dateinamens.

Gültige Werte: absoluter Pfad inkl. Dateiname

Standardeinstellung: LDAPCLIENT_CLIENT_KEY_FILE=''

LDAPCLIENT_SERVER_CERT_CHECK

Optionaler Parameter: Über diesen Parameter legt man fest, in welcher Weise ein Serverzertifikat beim Aufbau einer TLS-gesicherten Verbindung geprüft werden soll. Zur Auswahl stehen folgende Varianten:

Gültige Werte: never, allow, try, hard

Standardeinstellung: LDAPCLIENT_SERVER_CERT_CHECK='never'

Die Befehlsübersicht

Verschiedenes

Verschlüsselte Verbindung testen

Mit Hilfe des openssl-Programms kann man testen, ob eine verschlüsselte Verbindung zum LDAP-Server aufgebaut werden kann. Hierzu gibt man z.B. an der Konsole folgenden Befehl ein (Natürlich sind die Parameter entsprechend der eigenen Konfiguration anzupassen):

openssl s_client -connect localhost:636 -showcerts -state -CAfile /var/certs/ssl/certs/ca.pem

Weitere LDAP-Befehle

Exportieren des LDAP-Verzeichnisbaums in eine LDIF-Datei:

ldapsearch -x -D cn=ldapadmin,dc=privatnet,dc=lanW > output.ldif

Importieren einer LDIF-Datei in das LDAP-Verzeichnis:

ldapadd -x -D cn=ldapadmin,dc=privatnet,dc=lanW -f input.ldif

PHP-LDAP-Zugriff

Wenn es Probleme gibt sich über einen Webzugriff zu einem LDAP-Server zu verbinden, so kann es hilfreich sein, dass im Verzeichnis /usr/share/doc/ldapclient mitgelieferte PHP-Skript 'test-ldap.php' in den Webserverpfad zu kopieren, die Zugriffsrechte anzupassen und dann über den Webbrowser aufzurufen.

Logeinträge einer TLS-Verbindung (anonymous):

eis slapd[2609]: conn=14 fd=14 ACCEPT from IP=192.168.6.1:47276 (IP=0.0.0.0:636)
eis slapd[2609]: conn=14 fd=14 TLS established tls_ssf=256 ssf=256
eis slapd[2609]: conn=14 op=0 BIND dn="" method=128
eis slapd[2609]: conn=14 op=0 RESULT tag=97 err=0 text=
eis slapd[2609]: conn=14 op=1 UNBIND
eis slapd[2609]: conn=14 fd=14 closed

Logeinträge einer TLS-Verbindung (authentifiziert):

eis slapd[2609]: conn=15 fd=14 ACCEPT from IP=192.168.6.1:47279 (IP=0.0.0.0:636)
eis slapd[2609]: conn=15 fd=14 TLS established tls_ssf=256 ssf=256
eis slapd[2609]: conn=15 op=0 BIND dn="cn=ldapadmin,dc=local,dc=lan" method=128
eis slapd[2609]: conn=15 op=0 BIND dn="cn=ldapadmin,dc=local,dc=lan" mech=SIMPLE ssf=0
eis slapd[2609]: conn=15 op=0 RESULT tag=97 err=0 text=
eis slapd[2609]: conn=15 op=1 UNBIND
eis slapd[2609]: conn=15 fd=14 closed

Das Glossar

eis 2017-05-03