Kerberos: Integration Linux in Active Directory

Hallo Freunde der Sonne,

in diesem Beitrag geht es darum ein frisch installiertes CentOS 6.5 ins Active Directory zu holen.
Dieser Beitrag stellt den Anfang der Kerberos-Reihe zur Integration von CentOS & Apache in die Domäne dar.

Kerberos: Integration Linux in Active Directory

Klärung der Ausgangsposition bzw. der Zutatenliste:

  • CentOS in mind. Minimalinstallation (im Beispiel 6.5)
  • IP-Konfiguration (statisch, statische DHCP-Lease)
  • DNS-Registrierung des Hostname im AD-DNS
  • Netzwerkzugriff auf die Domäne

Schritt 1: Installation der notwendigen Software

Komponenten für Kerberos/Winbind sind minimal:

yum install krb5-workstation samba-winbind pam_krb5

Schritt 2: Authconfig-tui
Um den neuen Host mit verfügbaren DNS-Namen der Domäne hinzuzufügen starten wir das Tool „authconfig-tui“.

Konfiguration der Authentifizierung:
+ Winbind verwenden
+ Shadow-Passwörter verwenden
+ Kerberos verwenden
+ Winbind-Authentifizierung vernwenden
+ Lokale Autorisierung ist ausreichend

Kerberos-Einstellungen:
Realm (Domäne): <DOMAIN>.<TLD>
KDC: <primary-domain-controller / optional>
Admin-Server: <primary-domain-controller / optional>
+ DNS benutzen, um Rechner in der Domäne aufzulösen
+ DNS benutzen, um den KDC zu bestimmen
(ein funktionierendes DNS beschleunigt alle Vorgänge)

Winbind-Einstellungen:
Type = ads
Domain: <DOMAIN>
Domain-Controller: <primary-domain-controller>
ADS-Realm: <DOMAIN>.<TLD>
Shell = /sbin/nologin

Nun bitte das Beitreten der Domäne starten – Einstellungen speichern lassen.
Zur Authentifizierung an der Domäne bitte einen Domänen-Admin verwenden – für den Host wird nun ein Computer-Konto angelegt.

Verifizierung von Schritt 2: Authconfig-tui
Zur Überprüfung ob der Domänen-Beitritt erfolgreich war, einfach auf einen Domänen-Controller der Domäne gehen und dort unter „Active Directory-Benutzer und -Computer“ unter der Standard-OU „Computer“ nach dem Hostnamen schauen.

Um den Zugriff des CentOS auf die Domäne zu prüfen bitte folgendes Kommando alle Benutzer der Domäne abfragen lassen:

wbinfo -u
wbinfo -g

Die Ausgabe sollte dann mehere Benuterkonten im Format <DOMAIN><USERNAME> beinhalten.

Zum Test ob die DNS-Auflösung korrekt funktioniert bitte folgendes Kommando ausführen:

host -t SRV _kerberos._udp

Ausgegeben werden sollten die Domaincontroller.

Schritt 3: Feinschliff
Zwecks Schönheit, aber auch Funktion würde ich nach der Eirnichtung noch die Konfigurationsdateien überprüfen:

Kerberos-Konfiguration

nano /etc/krb5.conf

krb5.conf – Bitte die Bereiche so anpassen, dass nur die benötigten Domains übrig bleiben und möglichst keine Dopplungen übrig bleiben:

[libdefaults]
default_realm = <DOMAIN>.<TLD>
default_keytab_name = /etc/krb5.keytab
 dns_lookup_realm = true
dns_lookup_kdc = true

ticket_lifetime = 24h
renew_lifetime = 7d
forwardable = true

[realms]
 <DOMAIN>.<TLD> = {
  kdc = <kdc>.<domain>.<tld>
 }

[domain_realm]
 .<domain>.<tld> = <DOMAIN>.<TLD>
 <domain>.<tld> = <DOMAIN>.<TLD>

Winbind-Konfiguration

nano /etc/samba/smb.conf 

smb.conf – Bitte die Parameter für eine optimale Geschwindigkeit anpassen

[global]

   workgroup = <DOMAIN>
password server = <DOMAIN-CONTROLLER>.<DOMAIN>.<TLD>
realm = <DOMAIN>.<TLD>
security = ads
idmap config * : range = 16777216-33554431
template shell = /sbin/nologin
winbind use default domain = false
winbind offline logon = false
   kerberos method = secrets and keytab