Realisierung und Einführungskonzept einer standortübergreifenden Vereinheitlichung der
Benutzerverwaltung mit LDAP
Diplomarbeit bei Continental Temic in Ingolstadt 30. 5. 2005
Bernhard Geier
Vorstellung Continental Temic
Hersteller von KFZ-Elektronik (ESP, ABS, Sensoren,...)
ContiTemic + ContiTeves = CAS:
Umsatz: 5 Mrd. € Mitarbeiter: 22500 Standorte: 40
Ausgangslage
ca. 1500 Unix-Anwender
Userverwaltung teils NIS (Temic und Teves), teils FlatFiles (Temic)
Workstations: AIX 5.2L
Aufgabenstellung
Migration Unix-Benutzerverwaltung und anderer Konfigurationsdaten (Samba, Hosts, Automounter,...) von NIS/FlatFiles nach LDAP
Ausfallsicherheit durch Replikation
Schutz vor unberechtigtem Zugriff
leichte Administrierbarkeit und Nutzungsfreundlichkeit
Betriebssysteme AIX 5.2L und SuSE Linux
NIS
zentrale Verwaltung von Konfigurationseinstellungen über Tabellen:
Konfigurationsdatei NIS-Maps Beschreibung/etc/aliases mail.aliases, mail.byaddr Mail-Alias und Alias-Namen/etc/passwd passwd.byname, passwd.byuid User-IDs und Usernamen/etc/group group.byname, group.bygid Gruppen-IDs und Gruppennamen/etc/hosts hosts.byname, hosts.byaddr IP-Adressen und Hostnamen/etc/services services.byname, services.bynumber Dienstnamen und Portnummern/etc/protocols protocols.byname, protocols.bynumber Protokollnummern und Protokollnamen/etc/rpc rpc.byname, rpc.bynumber RPC-Namen und -Nummern/etc/netgroup netgroup.byname, netgroup.byhost Zugehörigkeit zu Netgroups
NIS
Ausfallsicherheit durch Master-Slave-Struktur
Nachteile NIS
unverschlüsselte Kommunikation
jeder darf alles lesen
skaliert schlecht
Anfällig für ARP-Spoofing
Zukunft ungewiss
NFS-Automounter
Automatisches, bedarfsgerechtes Mounten/Unmounten von über NFS freigegeben Verzeichnissen
Vorteile gegenüber dauerhaftem Mounten: geringere Last auf NFS-Server geringere Last auf NFS-Client weniger Netzwerkverkehr
Konfiguration über Automount-Maps (lokal oder NIS)
LDAP
entstanden aus X.500
standardisiert
objektorientiert
hierarchische Struktur
Unterstützung von Zugriffsrechten
Unterstützung von verschlüsseltem Zugriff und Zertifikaten
Replikation durch Master- und Slave-Server
Backend zur Datenspeicherung frei wählbar
LDAP: Server und Clients
Server: IBM Tivoli Directory Server mit DB2 OpenLDAP mit Berkeley DB
Clients: Betriebssystem (secldapclntd bzw. pam-/nss_ldap) Applikationen (Samba und Automounter)
Verzeichnishierarchie (DIT)
# Continental dn: dc=continental ,dc=de objectClass : dcObject objectClass : organization dc: continental o: continental.de
# Teves dn: ou=teves ,dc=continental ,dc=de objectClass : organizationalUnit ou: teves
# Temic dn: ou=temic ,dc=continental ,dc=de objectClass : organizationalUnit ou: temic
DIT CAS
LDAP: Verzeichniseintrag Person
dn: uid=meiera, ou=people, ou=teves, dc=continental, dc=de objectClass : shadowAccount objectClass : person objectClass : organizationalPerson objectClass : inetOrgPerson objectClass : posixAccount uid: meiera givenName: Arno sn: Meier cn: Arno Meier gecos: arno. [email protected] meiera departmentNumber : UNDEFINED localityName : FFM mail: arno. [email protected] userPasswort : {crypt}rMWJS.2 M2ALs. loginShell: /usr/bin/ksh uidNumber: 21271 gidNumber: 10008 homeDirectory : /homefs/ffm/tff/meiera
Objektklassendefinition aus core.schema:
objectclass ( 2.5.6.6 NAME 'person' DESC ' RFC2256 : a person' SUP top STRUCTURAL MUST ( sn $ cn ) MAY ( userPassword $ telephoneNumber $ seeAlso $ description ) )
LDAP: Objektklassen
LDAP: Verzeichniseintrag Person
dn: uid=meiera, ou=people, ou=teves, dc=continental, dc=de
uid=meiera
LDAP: Datenimport
aus NIS: MigrationTools von PADL Software
aus FlatFiles: sectoldif
Samba: pdbedit
LDAP: Zugriffsrechte
Adressat:Benutzer (anonym / angemeldet / bestimmter User) Verzeichnisast ObjektAttribut
Berechtigung:noneauthcomparesearchreadwrite
LDAP: Zugriffsrechte
access to dn.subtree=‘‘ou=people,ou=teves,dc=continental,dc=de’’ by dn=‘‘cn=TevesManager,ou=teves,dc=continental,dc=de’’ write by * none
access to dn.subtree=‘‘ou=people ,ou=teves ,dc=continental ,dc=de’’ attr=userPassword by self write by anonymous auth
LDAP: Replikation
2. Referral1. Änderung
3.
Änd
erun
g
Master
Slave
Slave
4. o
k
LDAP: Verschlüsselung
LDAPClient
LDAPServer
unverschlüsseltPort 389
LDAPClient
LDAPServerSSLv2
Port 640
LDAPClient
LDAPServer
TLS und unverschlüsseltPort 389
unverschlüsseltPort 389
LDAP: Verschlüsselung
LDAPClient
LDAPServer
stunnelClient
stunnelServer
unverschlüsseltP
ort 389
SSLv2Port 640
unve
rsch
lüss
elt
Por
t 38
9
Weboberfläche für User
Skripte und Tools
Skripte für Standardaufgaben: User anlegen Passwort zurücksetzen
Grafische Oberflächen für Verzeichnisadministration, z.B. JXplorer
Veraltete bzw. lückenhafte Dokumentation
AIX-Automounter unterstützt LDAP erst in AIX5.3ML2Lösung: Erstellen lokaler Automount-Maps aus LDAP mittels Cronjob
Fehlerhafte Software (ITDS, Linker)
Probleme
Vielen Dank
Top Related