Linux-Client in der Domäne
Version vom 18. Oktober 2026, 16:46 Uhr von Thomas.will (Diskussion | Beiträge) (Neue Seite (Kurs Linux - Samba))
| Kurs | Lab | Rechner | Domäne |
|---|---|---|---|
| Linux - Samba | Linux - Samba Lab | lx · 172.26.2XX.101 | ad.it2XX.int |
Einfach erklärt
- Ein Linux-Client in der Domäne erlaubt die Anmeldung mit dem Domänenkonto, am Bildschirm und per ssh.
- Dafür gibt es zwei Wege: winbind aus Samba, wie beim Samba Mitgliedsserver, oder sssd, das mit realmd den Beitritt mit einem Befehl erledigt.
- Beide holen Benutzer und Gruppen aus dem AD und melden per Kerberos an.
- Für einen Client ohne Freigaben ist sssd meist bequemer. Wer Freigaben anbietet, nimmt winbind.
Vergleich
| winbind | sssd mit realmd | |
|---|---|---|
| Beitritt | net ads join | realm join |
| Konfiguration | smb.conf | sssd.conf, legt realmd an |
| UIDs | idmap rid oder ad | eigener Algorithmus aus der SID, oder uidNumber |
| Offline-Anmeldung | eingeschränkt | ja, mit Cache |
| Samba-Freigaben anbieten | ja | nein, dafür braucht man winbind |
| Gruppenrichtlinien für Zugriff | nein | ja, ad_gpo_access_control |
- Wichtig: UIDs aus winbind mit rid und aus sssd sind verschieden. Nicht beide im selben Netz für dieselben Dateien mischen.
Vorbereitung
- DNS auf den DC, über DHCP oder fest. Prüfen: host -t SRV _ldap._tcp.ad.it201.int
- Name: hostnamectl set-hostname lx, in /etc/hosts lx.ad.it201.int
- Zeit vom DC wie beim Mitgliedsserver.
Weg 1: sssd mit realmd
apt install realmd sssd sssd-tools adcli libnss-sss libpam-sss krb5-user packagekit realm discover ad.it201.int realm join -U administrator ad.it201.int realm list
- realm discover zeigt, was gebraucht wird: required-package: sssd …
- realmd schreibt /etc/sssd/sssd.conf, trägt sss in die nsswitch.conf ein und richtet PAM ein.
- Kurze Namen statt max@ad.it201.int: in /etc/sssd/sssd.conf
[domain/ad.it201.int] use_fully_qualified_names = False fallback_homedir = /home/%u
- systemctl restart sssd
- pam-auth-update --enable mkhomedir
Wer darf sich anmelden
realm permit -g verwaltung realm permit max realm deny --all
- Ohne Einschränkung dürfen sich alle Domänenbenutzer anmelden.
Weg 2: winbind
- Genau wie beim Samba Mitgliedsserver, nur ohne Freigaben in der smb.conf.
Prüfen
id max getent passwd max su - max ssh max@lx klist
- Nach der Anmeldung zeigt klist ein Ticket für max. Damit geht ssh zu anderen Rechnern ohne Passwort, siehe Kerberos für Dienste.
- sssd-Status: sssctl domain-status ad.it201.int
- Cache leeren nach Änderungen im AD: sss_cache -E
Stolperfallen
- realm join scheitert mit „Couldn't join realm“: fast immer DNS oder Zeit.
- Gruppe im AD geändert, Linux merkt nichts: sssd cached. sss_cache -E
- Anmeldung am Bildschirm geht, ssh nicht: in /etc/ssh/sshd_config ist UsePAM no oder AllowUsers gesetzt.
- sssd und winbind gleichzeitig: Beide in nsswitch.conf liefern verschiedene UIDs für denselben Benutzer.
Übungen
Grundübungen
- Lassen Sie sich mit realm discover anzeigen, was die Domäne erwartet.
- Treten Sie mit realm join bei und melden Sie sich als max an.
- Stellen Sie auf kurze Benutzernamen um.
- Erlauben Sie nur der Gruppe verwaltung die Anmeldung. Testen Sie mit einem anderen Benutzer.
- Prüfen Sie nach der Anmeldung mit klist das Kerberos-Ticket.
Vertiefung
- Vergleichen Sie die UID von max auf lx (sssd) und auf fs (winbind). Warum sind sie verschieden?
- Ziehen Sie das Netzwerkkabel von lx. Kann sich max noch anmelden?
- Tragen Sie bei max im AD eine uidNumber ein und stellen Sie sssd auf ldap_id_mapping = False um.
Fehlersuche
- 1. realm discover findet nichts
lx hat nicht den DC als DNS-Server. Der DHCP-Bereich oder /etc/resolv.conf ist falsch.
- 2. id max funktioniert, die Anmeldung aber nicht
- Permission denied
realm permit schränkt die Anmeldung ein, und max ist nicht in der erlaubten Gruppe. realm list zeigt die erlaubten Logins.
- 3. Ein neues Gruppenmitglied hat auf lx die Gruppe nicht
sssd hat die alte Gruppenliste im Cache. sss_cache -E, abmelden und neu anmelden.
Vertiefung
- Kerberos client samba · Kerberos-Befehle - Benutzer
- https://wiki.samba.org/index.php/Setting_up_Samba_as_a_Domain_Member