Realisierung und Einführungskonzept einer standortübergreifenden Vereinheitlichung der...

Post on 06-Apr-2015

106 views 1 download

Transcript of Realisierung und Einführungskonzept einer standortübergreifenden Vereinheitlichung der...

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. meier@contiteves.com meiera departmentNumber : UNDEFINED localityName : FFM mail: arno. meier@contiteves.com 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