HELIOS Authentication Server LDAP
Einleitung
- Mac OS X Server („Open Directory“ / Kennwortserver)
- Univention Corporate Server (LDAP-Server)
- OpenLDAP (LDAP-Server; auf SUSE 10.2 getestet)
Voraussetzungen
- HELIOS UB+ Produktgeneration auf allen von HELIOS unterstützten Plattformen, mit Ausnahme von Windows
Was ist LDAP?
- LDAP (Lightweight Directory Access Protocol) ist ein Netzwerkprotokoll zum Abfragen und Ändern von Verzeichnisdiensten, das über TCP/IP läuft
- Sämtliche Benutzer und Gruppen werden in der LDAP-Datenbank gespeichert
- Die von HELIOS unterstützte Version von LDAP ist LDAPv3
- SASL (Simple Authentication and Security Layer) ist ein Protokoll zur Auswahl der Verschlüsselung, das in Kombination mit LDAP verwendet werden kann. Dieses Protokoll wird benötigt, um mit dem Apple Kennwortserver zu kommunizieren.
- Überprüfung des Kennworts
- Auf Mac OS X Server werden Kennwörter mit dem Apple „Workgroup Manager“ erzeugt und gegen den Apple Kennwortserver geprüft
- Auf dem Univention Corporate Server werden Kennwörter gegen das NTLM-Kennwort geprüft
- Auf OpenLDAP muss das HELIOS Kenwort manuell eingerichtet werden
- Werden Kennwörter in LDAP gespeichert, können verschieden Verschlüsselungsmethoden verwendet werden (HELIOS benötigt das NTLM- oder HELIOS Kennwort):
Kennwortverschlüsselung
Erklärung
Verschlüsseltes UNIX-Kennwort
Von UNIX-Anwendungen verwendet (nicht empfohlen)
NTLMv1-Kennwort
Von HELIOS und Samba verwendet
HELIOS Kennwort
Von HELIOS verwendet
- Verschiedene UNIX-Plattformen enthalten verschieden LDAP-Implementierungen. Teilweise sind diese älter oder inkompatibel. Deshalb liefert HELIOS aktuelle und kompatible LDAP-Bibliotheken für alle Plattformen mit:
LDAP-Lbraries in der HELIOS Software Erklärung
libldap_s.so1
LDAP-Bibliothek
libsasl2_s.so1
SASL-Bibliothek
sasl2/
Verzeichnis, welches die von SASL verwendeten Verschlüsselungen enthält
1 Mac OS X: „ibldap_s.dylib“ und „libsasl2_s.dylib“; RS/6000: „libldap_s.a“ und „libsasl2_s.a“
Installation
LDAP-Clientkonfiguration mit „authsrv“
|
Skript |
Erklärung |
|
LDAP-Konfigurationsskript für Mac OS X Server | |
|
LDAP-Konfigurationsskript für Univention Corporate Server | |
|
LDAP-Konfigurationsskript für OpenLDAP |
- Servername (Mac OS X)
- Servername, Name des Binds / Kennwort (Univention)
- Servername, Benutzer- / Gruppenbasis, Name des Binds / Kennwort (OpenLDAP)
LDAP-Filterpräferenzen
|
Präferenz |
Beispielwert |
Erklärung |
|
LDAP_Server |
localhost |
LDAP-Servername oder IP-Adresse |
|
LDAP_Port |
389 |
LDAP-Serverport |
|
LDAP_UserBase |
dc=HELIOS,dc=de |
Base Pointer in Datenbank |
|
LDAP_GroupBase |
dc=HELIOS,dc=de |
Base Pointer in Datenbank |
|
LDAP_BindDN |
uid=Administrator,cn=users, |
Name des LDAP-Binds |
|
LDAP_BindPassword |
secret |
Kennwort des LDAP-Binds |
|
LDAP_LongUserFilter |
longName=%s |
LDAP-Benutzereintrag über Langnamen |
|
LDAP_UserFilter |
cn=%s |
LDAP-Benutzereintrag über Kurznamen |
|
LDAP_UserIDFilter |
longName=%d |
LDAP-Benutzereintrag über Benutzer-ID |
|
LDAP_GroupFilter |
cn=%s |
LDAP-Benutzereintrag über Namen |
|
LDAP_GroupIDFilter |
gid=%d |
LDAP-Benutzereintrag über ID |
|
LDAP_GroupMemberFilter |
user=%s |
LDAP-Benutzereintrag über Gruppenzugehörigkeit |
LDAP-Attribute
|
Präferenz |
Beispielname |
Erklärung |
|
LDAP_UATTR_HeliosPassword |
heliosPassword |
HELIOS Kennwort (mit HELIOS „authutil“-Tool erzeugt) |
|
LDAP_UATTR_ClearPassword |
clearPassword |
Klartext-Kennwort (nicht empfohlen) |
|
LDAP_UATTR_NTPassword |
sambaNTPassword |
NT-Hash |
|
LDAP_UATTR_Name |
uid |
Benutzername (z. B. UNIX short name) |
|
LDAP_UATTR_LongName |
cn |
Langname des Benutzers (z. B. UNIX GECOS) |
|
LDAP_UATTR_UID |
uidNumber |
Benutzer-ID |
|
LDAP_UATTR_PGID |
gidNumber |
ID der Primärgruppe |
|
LDAP_UATTR_HomeDirectory |
homeDirectory |
Pfad zum Home-Verzeichnis des Benutzers |
|
LDAP_UATTR_AppleID |
authAuthority |
Apple-ID zur Benutzeridentifikation am Apple Kennwortserver (nur Mac OS X Server) |
|
LDAP_GATTR_GID |
gidNumber |
Gruppen-ID |
|
LDAP_GATTR_NAME |
cn |
Gruppenname |
|
LDAP_GATTR_AppleID |
authAuthority |
Apple-ID zur Benutzeridentifikation am Apple Kennwortserver (nur Mac OS X Server) |
LDAP-Verbindung prüfen
1. Bauen Sie eine Verbindung mit dem LDAP-Server auf
# bin/socket -v ldaphost 389
socket 1.0.0 (c) 2005 by HELIOS Software Garbsen
Trying to connect to ldaphost port 389 ...
Resolving ip address ...
Address is 172.16.3.228.
Opening socket ...
Done.
Connecting to server ...
Done.
Local port is 44590, remote port is 389.
Successfully connected to server.
Going into interactive mode.
2. Sie können mit dem Befehl „ldapsearch“ die LDAP-Serververbindung prüfen. Dieser Befehl steht üblicherweise auf allen UNIX-Systemen zur Verfügung
configContext=cn=config
namingContexts=dc=my-domain,dc=com
supportedControl=1.3.6.1.4.1.4203.1.9.1.1
supportedControl=2.16.840.1.113730.3.4.18
supportedControl=2.16.840.1.113730.3.4.2
supportedControl=1.3.6.1.4.1.4203.1.10.1
supportedControl=1.2.840.113556.1.4.319
supportedControl=1.2.826.0.1.334810.2.3
supportedControl=1.2.826.0.1.3344810.2.3
supportedControl=1.3.6.1.1.13.2
supportedControl=1.3.6.1.1.13.1
supportedControl=1.3.6.1.1.12
supportedExtension=1.3.6.1.4.1.4203.1.11.1
supportedExtension=1.3.6.1.4.1.4203.1.11.3
supportedFeatures=1.3.6.1.1.14
supportedFeatures=1.3.6.1.4.1.4203.1.5.1
supportedFeatures=1.3.6.1.4.1.4203.1.5.2
supportedFeatures=1.3.6.1.4.1.4203.1.5.3
supportedFeatures=1.3.6.1.4.1.4203.1.5.4
supportedFeatures=1.3.6.1.4.1.4203.1.5.5
supportedLDAPVersion=3
supportedSASLMechanisms=DIGEST-MD5
supportedSASLMechanisms=CRAM-MD5
entryDN=
subschemaSubentry=cn=Subschema
3. Starten Sie den HELIOS Autorisierungsserver mit dem Befehl „ldapcheck“
# sbin/authsrv ldapcheck ldapuser
ldap preliminary check starting...
preference ldap server - 'LDAP_Server':'ldaphost.helios.de' OK
preference using port - 'LDAP_Port':'389' OK
* connected
* got version 2
* set to version 3
* using anonymous bind
* bind OK, now requesting user info for 'ldapuser'
preference user filter - 'LDAP_UserFilter':'uid=%s' OK
preference user base - 'LDAP_UserBase':'cn=users,dc=ldaphost,dc=helios,dc=de' OK
* filter: 'uid=ldapuser'
* user found, now requesting basic attributes
preference user name - 'LDAP_UATTR_Name':'uid' OK
preference user long name - 'LDAP_UATTR_LongName':'cn' OK
preference home dir - 'LDAP_UATTR_HomeDirectory':'homeDirectory' OK
preference uid - 'LDAP_UATTR_UID':'uidNumber' OK
preference pgid - 'LDAP_UATTR_PGID':'gidNumber' OK
* (attribute 'objectClass' detected)
* attribute UID detected
* (attribute 'apple-generateduid' detected)
* (attribute 'apple-mcxflags' detected)
* (attribute 'loginShell' detected)
* attribute PGID detected
* (attribute 'authAuthority' detected)
* clear text password detected
* attribute name detected
* attribute long name detected
* (attribute 'sn' detected)
* attribute homedir detected
* 12 attributes detected
Manuelle Einrichtung des OpenLDAP-Servers (am Beispiel SUSE 10.2)
Anlegen von Nodes für root und für Benutzer / Gruppen:
Einrichten eines Beispiel-Benutzers bzw. einer Beispiel-Gruppe:
Konfiguration und Benutzerverwaltung des LDAP-Servers
- ldap.conf (LDAP-Basiseinstellungen für Clients)
- ldapfilter.conf (LDAP-Filterkonfiguration)
- ldapsearchprefs.conf (LDAP-Sucheinstellungen)
- ldaptemplates.conf (LDAP-Ausgabeeinstellungen)
Deinstallation
- Entfernen Sie den Eintrag „LDAP“ (Univention, OpenLDAP) bzw. „MACOSX“ (Mac OS X Server) aus der Präferenz NameServices:
# prefvalue -k 'Programs/authsrv/NameServices' -t str "local,NIS"
Versionen
- Finale Version mit HELIOS UB+ (Dezember 2007)
- Preview 2 (13. Juli 2007)
- NTLM für Vista verfügbar
- Benutzereinträge werden aus dem Cache gelöscht, falls das Kennwort geändert wurde
- Fehlerbehebung für HP IA-64
- Fehlerbehebung bei der Anmeldung an Mac OS X LDAP- und Kennwortserver
Feedback







