Upload
diederick-werden
View
106
Download
1
Embed Size (px)
Citation preview
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