Active Directory User Management

Die Verwaltung von Benutzern in einer Active Directory (AD) Umgebung ist in der Regel eine Aufgabe, die auf Windows-Systemen erfolgt. Doch auch Linux-Server und Workstations können vollständig in eine AD-Infrastruktur integriert und genutzt werden, um Benutzer zu verwalten und zentralisierte Authentifizierungsdienste in einem Netzwerk bereitzustellen. Dieser Blog-Beitrag beleuchtet, wie die Benutzerverwaltung in einem AD-Umfeld unter Linux funktioniert und wie man Linux-Systeme in AD integriert, um AD-Benutzer anzulegen, zu verwalten und zu authentifizieren.

Vorteile der Integration von Linux in Active Directory

Durch die Integration eines Linux-Systems in eine AD-Domäne profitieren Administratoren von zahlreichen Vorteilen:

  • Zentrale Benutzerverwaltung: Alle Benutzer, Gruppen und deren Berechtigungen können über das AD zentral verwaltet werden.
  • Single Sign-On (SSO): Benutzer können sich mit den gleichen Anmeldeinformationen auf verschiedenen Systemen authentifizieren, ohne separate Konten pflegen zu müssen.
  • Kerberos-basierte Authentifizierung: Das sichere Kerberos-Protokoll wird verwendet, um Benutzer zu authentifizieren.
  • Zentrale Passwortverwaltung: AD bietet eine zentrale Passwortverwaltung, die auf allen integrierten Systemen durchgesetzt wird, auch auf Linux.

Voraussetzungen zur Benutzerverwaltung in Active Directory unter Linux

Um Linux-Systeme mit AD zu verbinden und Benutzer zu verwalten, müssen einige Pakete und Konfigurationen eingerichtet werden:

  1. Samba: Ermöglicht die Teilnahme des Linux-Systems an einer Windows-basierten Domäne.
  2. SSSD (System Security Services Daemon): Ermöglicht es Linux-Systemen, Benutzerinformationen und Authentifizierungsdienste von AD abzurufen.
  3. Kerberos: Authentifiziert Benutzer über das AD-Kerberos-Protokoll.
  4. Realmd: Ein Tool zur einfachen Domain-Integration unter Linux.

Diese Tools können auf gängigen Linux-Distributionen wie Ubuntu/Debian oder RHEL/CentOS installiert werden. Beispiel für die Installation der benötigten Pakete:

sudo apt-get install realmd sssd sssd-tools samba-common-bin adcli krb5-user

Schritte zur AD-Integration eines Linux-Systems

1. Domänenbeitritt des Linux-Systems

Bevor Benutzer aus dem Active Directory auf dem Linux-System verwaltet werden können, muss der Host der AD-Domäne beitreten. Dies kann mit dem realm Befehl erfolgen.

Zuerst muss überprüft werden, ob die Domäne sichtbar ist:

realm discover domain.local

Wenn die Domäne korrekt erkannt wird, kann der Linux-Host der Domäne beitreten:

sudo realm join domain.local -U Administrator

Nach der Eingabe des Passworts des AD-Administrators wird das System der Domäne beitreten. Danach sollten AD-Benutzer sich am System authentifizieren können.

2. SSSD und Samba Konfiguration

Nach dem Domänenbeitritt wird der sssd Dienst verwendet, um Benutzerinformationen von der AD-Domäne abzurufen und lokale Benutzerverwaltungsfunktionen anzubieten.

Die Konfiguration von SSSD befindet sich in der Datei /etc/sssd/sssd.conf. Ein typisches Setup könnte so aussehen:

[sssd]
services = nss, pam
config_file_version = 2
domains = domain.local

[domain/domain.local]
id_provider = ad
auth_provider = ad
chpass_provider = ad
access_provider = ad
krb5_realm = DOMAIN.LOCAL
realmd_tags = manages-system joined-with-samba

Die Samba-Konfigurationsdatei /etc/samba/smb.conf sollte ebenfalls entsprechend der AD-Domäne angepasst werden:

[global]
   workgroup = DOMAIN
   realm = DOMAIN.LOCAL
   security = ads
   ads dns update = Yes
   template shell = /bin/bash
3. Benutzerverwaltung mit AD-Benutzern

Nach der Integration können AD-Benutzer nahtlos auf dem Linux-System verwaltet werden. Die Befehle, die in einer AD-Umgebung verwendet werden, sind identisch mit denen für lokale Benutzer auf Linux-Systemen, mit dem Unterschied, dass die Benutzerinformationen aus AD bezogen werden.

  • Auflösung von AD-Benutzern: Um Informationen über einen AD-Benutzer zu erhalten, kann der Befehl id verwendet werden:
id benutzername@domain.local

Dieser Befehl zeigt die UID, GID und Gruppen des Benutzers an.

Benutzerlogin auf dem Linux-System: AD-Benutzer können sich nun mit ihren AD-Anmeldeinformationen auf dem Linux-System anmelden. Hierbei wird automatisch Kerberos zur Authentifizierung verwendet, sodass der Benutzer Single Sign-On (SSO) nutzen kann.

Kerberos-Ticket erhalten: Um zu überprüfen, ob ein Benutzer erfolgreich authentifiziert wurde, kann ein Kerberos-Ticket angefordert werden:

kinit benutzername@DOMAIN.LOCAL
klist
  • Dies zeigt das Kerberos-Ticket des Benutzers an, das für die Authentifizierung verwendet wird.
4. Passwortverwaltung

Passwörter werden direkt im Active Directory verwaltet. Das bedeutet, dass Linux-Administratoren, die AD-Tools verwenden, keine speziellen lokalen Mechanismen benötigen, um Passwörter zu ändern.

  • Passwortänderung über Linux: Benutzer können ihr AD-Passwort direkt über das Linux-System ändern:
passwd
  • Dieser Befehl aktualisiert das Passwort im AD und gilt für alle Systeme, die in der Domäne integriert sind.
5. Zugriffssteuerung

SSSD bietet die Möglichkeit, die Zugriffssteuerung auf AD-Basis zu konfigurieren. Zum Beispiel können Sie festlegen, welche Benutzer oder Gruppen sich auf dem Linux-System anmelden dürfen. Dazu wird die Datei /etc/sssd/sssd.conf angepasst.

Beispiel, um nur Mitgliedern einer bestimmten AD-Gruppe den Zugang zu gewähren:

access_provider = ad
ad_access_filter = (memberOf=CN=linuxadmins,OU=groups,DC=domain,DC=local)

Nur Mitglieder der Gruppe „linuxadmins“ dürfen sich nun auf dem Linux-System anmelden.

Fehlerbehebung und Tipps

Falls Benutzerprobleme auftreten oder die AD-Integration nicht wie erwartet funktioniert, helfen die folgenden Ansätze bei der Fehlerbehebung:

  • Logdateien überprüfen:
    • /var/log/sssd/sssd.log (SSSD-Logs)
    • /var/log/auth.log (Authentifizierungslogs)
  • SSSD-Dienst neustarten: Falls Änderungen an der Konfiguration vorgenommen wurden, muss der SSSD-Dienst neugestartet werden:
sudo systemctl restart sssd

Kerberos testen: Kerberos-Authentifizierungstests können wertvolle Hinweise liefern, ob das AD richtig funktioniert:

kinit benutzername@DOMAIN.LOCAL
  • DNS-Konfiguration prüfen: Active Directory hängt stark von DNS ab. Stellen Sie sicher, dass das Linux-System den richtigen DNS-Server (den AD-DNS-Server) verwendet und Domänennamen korrekt auflösen kann.

Fazit

Die Integration von Linux-Systemen in eine Active Directory-Umgebung ermöglicht eine nahtlose Verwaltung von Benutzern und zentralisierte Authentifizierungsdienste. Durch den Einsatz von Tools wie Samba, SSSD und Kerberos können Linux-Hosts problemlos AD-Benutzer verwalten und authentifizieren, was die Verwaltung in gemischten Umgebungen erheblich vereinfacht. Mit einer guten Konfiguration und ein wenig Troubleshooting können Linux-Admins effizient in Windows-geprägte Netzwerke integriert werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert