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

Post on 06-Apr-2015

106 views 1 download

transcript

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