Upload
others
View
22
Download
0
Embed Size (px)
Citation preview
ACTIVE DIRECTORY UND UNIXWissenswertes zum Thema Kopplung LDAP Active Directory
AGENDA
29.09.2015 Wissenswertes zum Thema Kopplung LDAP Active Directory2
01 Voraussetzungen
02 Szenarien
03 Implementierung
04 Authentifizierung mit Kerberos
VORAUSSETZUNGEN
29.09.2015 Wissenswertes zum Thema Kopplung LDAP Active Directory3
VORAUSSETZUNGEN
• Active Directory Server
ab Windows 2008 R2
• Auf allen Servern muss die Zeit über NTP synchron gehalten werden
Wissenswertes zum Thema Kopplung LDAP Active Directory4 29.09.2015
SZENARIEN
29.09.2015 Wissenswertes zum Thema Kopplung LDAP Active Directory5
SZENARIEN
Grundsätzlich gibt es zwei Möglichkeiten Autorisierung und Authentifizierung auf
UNIX Servern über eine Active Directory Umgebung zu realisieren:
• Direkte Anbindung
• Indirekte Anbindung über Active Directory Lightweight Directory Services (AD LDS)
Wissenswertes zum Thema Kopplung LDAP Active Directory6 29.09.2015
DIREKTE ANBINDUNG
• Ab Windows 2008 R2 ist das LDAP Schema RFC2307 integriert
posixAccount
posixGroup
• Sollte dies ausreichend sein, ist eine direkte Anbindung ohne großen Aufwand zu
realisieren
• Die Klassen und Attribute des RFC2307 Schemas können nach Aktivierung des
Identity Management für UNIX Rollendienstes direkt über das übliche User
Management Tool bearbeitet werden
UID
Anmelde-Shell
Basisverzeichnis
Primäre GID
Wissenswertes zum Thema Kopplung LDAP Active Directory7 29.09.2015
INDIREKTE ANBINDUNG ÜBER AD LDS
• AD LDS ist im Prinzip die LDAP Komponente des AD
• Ermöglicht Synchronisierung gezielter Objekt und Attribute
• Die Synchronisierung wird über Proxy Objekte realisiert
• Ein Link zwischen originalem und Proxy Objekt wird durch die Eindeutigkeit der
objectSID in einer AD Domäne hergestellt
• Jeder Bind Versuch wird durch die Klasse "userProxy" vom AD LDS an den AD
weitergeleitet: „Bind Redirect“
• Multimaster Replikation wird unterstützt
Wissenswertes zum Thema Kopplung LDAP Active Directory8 29.09.2015
INDIREKTE ANBINDUNG ÜBER AD LDS
• Schemaerweiterungen sind mit deutlich geringerem Risiko möglich, da diese nicht
auf den Domain Controllern importiert werden müssen
• Beispiele für Schemaerweiterungen:
AIX Schemaerweiterung, wenn AIXPERT und ARTEX Informationen im Directory Server vorgehalten werden sollen
Automount Schemaerweiterung, da diese nicht im Standard RFC2307 definiert sind
Schemaerweiterung für eigene Web Applikationen
Wissenswertes zum Thema Kopplung LDAP Active Directory9 29.09.2015
IMPLEMENTIERUNG
29.09.2015 Wissenswertes zum Thema Kopplung LDAP Active Directory10
IMPLEMENTIERUNG – AD LDS INSTALLATION
• Die Installation erfolgt durch Aktivierung der Rolle „Active Directory Lightweight
Directory Services“
• Dies erfolgt im Server Manager über die Funktion „Rollen hinzufügen“
• Die Installation sollte möglichst auf einer dedizierten physikalischen oder virtuellen
Machine erfolgen
Wissenswertes zum Thema Kopplung LDAP Active Directory11 29.09.2015
IMPLEMENTIERUNG – AD LDS KONFIGURATION
Im ersten Schritt muss nach der Installation eine AD LDS Instanz erstellt werden
Starten des „Setup-Assistent für AD LDS“ über die Server Manager
Für den ersten Master einer Multimaster Umgebung sollte die Option „Eine eindeutige Instanz installieren“ gewählt
werden
Für alle weiteren Master Server sollte die Option „Ein Replikat einer vorhandenen Instanz installieren“ gewählt
werden
Wissenswertes zum Thema Kopplung LDAP Active Directory12 29.09.2015
IMPLEMENTIERUNG – AD LDS KONFIGURATION
AD LDS bringt initial nur eine minimale Schemadefinition mit
Für eine Synchronisation mit AD muss mindestens das AD 2008 R2 Schema
installiert werden:
ldifde -i -u -s localhost:389 -f %WINDIR%\ADAM\MS-adamschemaw2k8.LDF -c "cn=Configuration,dc=X" #configurationNamingContext
Analog können auch zusätzliche Schemaerweiterungen installiert werden:
ldifde -i -s localhost:389 -f %WINDIR%\ADAM\aixSchemaForAD.ldf -c "cn=Configuration,{Forest Root}" #configurationNamingContext
Wissenswertes zum Thema Kopplung LDAP Active Directory13 29.09.2015
IMPLEMENTIERUNG – AD LDS BACKUP
Die einfachste Backuplösung ist ein regelmäßiger ldifexport Job. Die komplette
Konfiguration kann wie folgt exportiert werden:
ldifde -f export_config_20150927 -s localhost:389-d "CN=Configuration,CN={XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}„
-c "#configurationNamingContext" "cn=configuration,dc=X"
Verbindung mit "localhost:389" wird hergestellt.
Anmelden als aktueller Benutzer unter Verwendung von SSPI
Das Verzeichnis wird in die Datei "export_config_20150927" exportiert.
Es wird nach Einträgen gesucht...
Die Einträge werden geschrieben.................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
...................................................
817 Einträge wurden exportiert.
Der Befehl wurde einwandfrei durchgeführt.
Wissenswertes zum Thema Kopplung LDAP Active Directory14 29.09.2015
IMPLEMENTIERUNG – AD LDS BACKUP
Die Schemas können wie folgt exportiert werden:
ldifde -f export_schema_20150927 -s localhost:389-d „CN=Schema,CN=Configuration,CN={XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}„
-c "#configurationNamingContext" "cn=configuration,dc=X"
Verbindung mit "localhost:389" wird hergestellt.
Anmelden als aktueller Benutzer unter Verwendung von SSPI
Das Verzeichnis wird in die Datei "export_schema_20150927" exportiert.
Es wird nach Einträgen gesucht...
Die Einträge werden geschrieben.................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
................................................................................
...................................................
1271 Einträge wurden exportiert.
Der Befehl wurde einwandfrei durchgeführt.
Wissenswertes zum Thema Kopplung LDAP Active Directory15 29.09.2015
IMPLEMENTIERUNG – AD LDS SYNCHRONISIERUNG
• Secure Binding für Reverse Binding kann durch Import der folgenden LDIF Datei
deaktiviert werden
CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=X
Object: CN=Directory Service, CN=Windows NT, CN=Services, CN=Configuration
Attribute: msDS-Other-Setings
Value: change RequiresSecureProxyBind from 1 (enforced) to 0 (disabled)
Die Synchronisierung mit „adamsync“, d.h. die genauen Information, welche
Objekte und Attribute synchronisiert werden sollen und wohin synchronisiert
werden soll, wird über eine XML Datei konfiguriert. Der Import der Datei erfolgt mit:
adamsync /i localhost:389 MS-AdamSyncConfPeopleGroups.xml
Wissenswertes zum Thema Kopplung LDAP Active Directory16 29.09.2015
IMPLEMENTIERUNG – AD LDS SYNCHRONISIERUNG
<source-ad-name>adserver.domain.com</source-ad-name>
<source-ad-partition>dc=domain,dc=com</source-ad-partition>
<source-ad-account></source-ad-account>
<target-dn>dc=targetdomain,dc=de</target-dn>
<query>
<base-dn>dc=domain,dc=com</base-dn>
<object-filter>(|(uidnumber=*)(gidnumber=*))</object-filter>
<attributes>
<include>objectSID</include>
<include>cn</include>
<include>displayName</include>
<include>gidNumber</include>
<include>uid</include>
<include>givenName</include>
<include>...</include>
<exclude></exclude>
</attributes>
</query>
<user-proxy>
<source-object-class>user</source-object-class>
<target-object-class>userProxyFull</target-object-class>
</user-proxy>
Wissenswertes zum Thema Kopplung LDAP Active Directory17 29.09.2015
IMPLEMENTIERUNG – AIX
• Unter AIX müssen zuerst die folgenden Filesets installiert werden:
idsldap.clt32bit6x.rte
idsldap.clt64bit6x.rte
idsldap.clt_max_crypto32bit6x.rte
idsldap.clt_max_crypto64bit6x.rte
idsldap.cltbase6x.adt
idsldap.cltbase6x.rte
idsldap.clt32bit6x.rte
idsldap.clt64bit6x.rte
idsldap.cltbase6x.rte
gsksa.rte
gskta.rte
• Die initiale Konfiguration erfolgt über den Befehl „mksecldap“:mksecldap -c –h adlds.domain.com -p XXXX -d DC=domain,DC=com -A ldap_auth -a "CN=AUTHNAME,OU=unix,OU=Technical,DC=domain,DC=com«
Wissenswertes zum Thema Kopplung LDAP Active Directory18 29.09.2015
IMPLEMENTIERUNG – AIX
• Dieser Befehl generiert unter anderen die Datei /etc/security/ldap/ldap.cfg.
Interessant sind hier vor allem die Parameter
userattrmappath: /etc/security/ldap/sfur2user.map
groupattrmappath: /etc/security/ldap/sfur2group.map
• In diesen Dateien kann festgelegt werden, wie bestimmte Attribute gemappt
werden.
Um die selbe Userid, wie bei der Windows Anmeldung, auch unter AIX zu verwenden, kann folgende Zeile in der
Datei sfur2user.map hinzugefügt werden:
auth_name SEC_CHAR sAMAccountName s na yes
Um für die Gruppenmitgliedschaften das Attribut „Displayname“ statt des standardmäßigen „cn“ zu verwenden,
kann folgende Zeile in der Datei sfur2group.map hinzugefügt werden:
users SEC_LIST displayname m na yes
Wissenswertes zum Thema Kopplung LDAP Active Directory19 29.09.2015
IMPLEMENTIERUNG – AIX
• In der ldap.cfg Datei können auch rekursive Gruppenmitgliedschaften definiert
werden.
Mit folgender Definition können zum Beispiel Mitglieder der beiden Standard AIX Gruppen „system“ und „staff“
definiert werden:
userbasedn:OU=Teams,DC=domain,DC=com??(|(memberOf:1.2.840.113556.1.4.1941:=CN= AIX systemuser,OU=AIX,OU=UNIX,OU=Systemuser,DC=domain,DC=com)(memberOf:1.2.840.113556 .1.4.1941:=CN=AIX staffuser,OU=AIX,OU=UNIX,OU=Systemuser,DC=domain,DC=com)) groupbasedn: OU=AIX,OU=UNIX,OU=Systemuser,DC=domain,DC=com userclasses: organizationalPerson groupclasses: group
Eine detaillierte Beschreibung dieser erweiterten Syntax ist auf der Webseite https://msdn.microsoft.com/en-
us/library/aa746475%28v=vs.85%29.aspx verfügbar.
• Die Umstellung der default Authentifizierung und Autorisierung erfolgt durch
setzten der Parameter „system“ und „registry“ in der Datei /etc/security/user:SYSTEM = "LDAP OR compat"
registry = files
Wissenswertes zum Thema Kopplung LDAP Active Directory20 29.09.2015
AUTHENTIFIZIERUNG MIT
KERBEROS
29.09.2015 Wissenswertes zum Thema Kopplung LDAP Active Directory21
AUTHENTIFIZIERUNG ÜBER KERBEROS
• Kerberos ermöglicht eine Single-Sign-On (SSO) Lösung
• Eine Anmeldung erfolgt nur ein Mal, zum Beispiel während der Anmeldung an einer
Windows Workstation, welche Mitglied der AD Domäne ist.
• Anschließend erfolgt die Authentifizierung an Servern, welche auch Mitglieder der
Domäne sind und auf welchen Kerberos konfiguriert wurde, automatisch über
Kerberos Tickets.
Wissenswertes zum Thema Kopplung LDAP Active Directory22 29.09.2015
KERBEROS – IMPLEMENTIERUNG
Die Unix Server müssen als User Objekte im AD erstellt werden
„Host Service Principal“ wird über ktpass.exe hinzugefügt
Automatisiertes Verfahren über Samba Client möglich
ktpass.exe -princ host/[email protected] -mapuser DOMAIN.COM\server1 -crypto RC4-HMAC-NT -ptype KRB5_NT_PRINCIPAL -pass
+rndPass -out C:\Temp\server1.keytab
Targeting domain controller: ad.domain.com
Successfully mapped host/server1.domain.com to server1.
Password succesfully set!
Key created.
Output keytab to C:\Temp\server1.keytab:
Keytab version: 0x502
keysize 67 host/[email protected] ptype 1 (KRB5_NT_PRINCIPAL) vno 5 etype 0x17 (RC4-HMAC)
keylength 16 (0xXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX)
Als Verschlüsselungsmechanismus wird seit Windows 2008 R2 mindestens ARCFOUR-HMAC vorausgesetzt
Wissenswertes zum Thema Kopplung LDAP Active Directory23 29.09.2015
KERBEROS – IMPLEMENTIERUNG
• Auf den AIX Servern muss zuerst das Fileset krb5.client.rte installiert werden
• Anschließend erfolgt die initiale Konfiguration mit dem Befehl:
mkkrb5clnt -r DOMAIN.COM -d domain.com -c ad.domain.com -s ad.domain.com –D
• Die resultierende /etc/krb5.conf Datei kann dann wie folgt angepasst werden:
Wissenswertes zum Thema Kopplung LDAP Active Directory24 29.09.2015
KERBEROS – IMPLEMENTIERUNG
[libdefaults]
default_realm = DOMAIN.COM
default_keytab_name = FILE:/etc/krb5/krb5.keytab
default_tkt_enctypes = des3-cbc-sha1 arcfour-hmac aes256-cts des-cbc-md5 des-cbc-crc aes128-cts
default_tgs_enctypes = des3-cbc-sha1 arcfour-hmac aes256-cts des-cbc-md5 des-cbc-crc aes128-cts
[realms]
DOMAIN>COM = {
kdc = ad.domain.com:88
admin_server = ad.domain.com:749
default_domain = domain.com
}
[domain_realm]
.domain.com = DOMAIN>COM
ad.domain.com = DOMAIN>COM
Wissenswertes zum Thema Kopplung LDAP Active Directory25 29.09.2015
KERBEROS – IMPLEMENTIERUNG
• Die auf den Domain Controllern erstellte keytab Datei muss noch importiert
werden:
# ktutil
ktutil: rkt /tmp/server1.keytab
ktutil: wkt /etc/krb5/krb5.keytab
ktutil: q
Wissenswertes zum Thema Kopplung LDAP Active Directory26 29.09.2015
KERBEROS – IMPLEMENTIERUNG
• Abschließend muss noch Kerberos als Authentifizierungsmechnismus konfiguriert
werden:
In der Datei /etc/methods.cfg müssen die folgenden Zeilen hinzugefügt werden:
KRB5files:
options = db=LDAP,auth=KRB5
Die Umstellung der default Authentifizierung und Autorisierung erfolgt durch setzten der Parameter „system“ und
„registry“ in der Datei /etc/security/user:
SYSTEM = "KRB5files"
registry = KRB5files
Damit eine Anmeldung an den lokalen User Accounts weiterhin möglich ist, müssen noch die folgenden Einträge in
deren Stanza hinzugefügt werden. Dieses ist absolut notwendig, da ansonsten keine Anmeldung mehr am root
Account möglich ist:
SYSTEM = "LDAP OR compat"
registry = files
Wissenswertes zum Thema Kopplung LDAP Active Directory27 29.09.2015
KERBEROS – IMPLEMENTIERUNG
• Damit die Authentifizierung über Kerberos auch über SSH funktioniert, müssen die
folgenden Optionen in der Datei /etc/ssh/sshd_config gesetzt werden:
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
Wissenswertes zum Thema Kopplung LDAP Active Directory28 29.09.2015
RESSOURCEN
AD LDS https://technet.microsoft.com/en-us/windowsserver/dd448612.aspx
RFC2307 https://www.ietf.org/rfc/rfc2307.txt
Kerberos http://de.wikipedia.org/wiki/Kerberos_(Informatik)
http://web.mit.edu/kerberos/
Wissenswertes zum Thema Kopplung LDAP Active Directory29 29.09.2015
VIELEN DANK FÜR
IHRE AUFMERKSAMKEITDRAZEN-PETER BAICCONSULTANT
TEL: +49 6151 8290-7709
MOBIL: +49 163 8075246
EMAIL: [email protected]
29.09.2015 Wissenswertes zum Thema Kopplung LDAP Active Directory30