Samba AD kann Domänenbenutzer auf Linux-Client nicht anmelden

Samba AD kann Domänenbenutzer auf Linux-Client nicht anmelden

Ich experimentiere seit zwei Wochen mit Samba als Active Directory-Controller in meinem Heimnetzwerk.

Ich habe Samba auf Ubuntu Server 22.04 installiert, indem ich ein paar Anleitungen und Videos befolgt habe, aberdiese Seitedeckt das meiste davon ab. Ich kann Computer zur Domäne hinzufügen, sowohl Windows- als auch Linux-Computer. Ich kann die hinzugefügten Computer mit auflisten samba-tool computer list.

Ich habe mit dem Samba-Tool erfolgreich Benutzer und Gruppen erstellt. Von Windows-Clients aus kann ich mich mit diesen Konten anmelden.

Von Linux (Ubuntu 23.04 und 23.10) kann ich der Domäne beitretennach offiziellem UbuntuDokumente, aber ich kann mich nicht anmelden.

bp@bas-hp:samba (master) % sudo login                   
bas-hp login: [email protected]
Password: 

Login incorrect
bas-hp login: [email protected]
Password: 

Login incorrect

Ich kann ein Kerberos-Ticket erstellen

bp@bas-hp:samba (master) % klist           
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: [email protected]

Valid starting     Expires            Service principal
16-04-24 22:26:57  17-04-24 08:26:57  krbtgt/[email protected]
    renew until 17-04-24 22:26:53

Die Ergebnisse meiner Versuche im Abschnitt „Testen“ des Dokuments, dem ich folge, scheinen zunächst gut zu sein:

bp@legion-ubuntu:~ % getent passwd [email protected]
[email protected]:*:1494001108:1494000513:Bas Prins:/home/[email protected]:/bin/bash
bp@legion-ubuntu:~ % getent passwd [email protected] 
[email protected]:*:1494001104:1494000513:bp:/home/[email protected]:/bin/bash

Aber wenn ich den groupsBefehl ausgebe, sehe ich ein besorgniserregendes Ergebnis

bp@legion-ubuntu:~ % groups [email protected]       
[email protected] : domain [email protected] denied rodc password replication [email protected] [email protected] enterprise [email protected] domain [email protected]
bp@legion-ubuntu:~ % groups [email protected]
[email protected] : domain [email protected] denied rodc password replication [email protected] [email protected] enterprise [email protected] domain [email protected]

Parallel google ich, was „verweigerte Rodc-Passwortreplikation“ bedeutet und ob/wie ich das beheben muss.


Vollständige sssd.conf

[sssd]
domains = sb.lan
config_file_version = 2
services = nss, pam

[domain/sb.lan]
default_shell = /bin/bash
krb5_store_password_if_offline = True
cache_credentials = True
krb5_realm = SB.LAN
realmd_tags = manages-system joined-with-adcli
id_provider = ad
fallback_homedir = /home/%u@%d
ad_domain = sb.lan
use_fully_qualified_names = True
ldap_id_mapping = True
access_provider = ad
timeout = 20
ldap_uri = ldap://dc.sb.lan
ldap_search_base = dc=sb,dc=lan
auth_provider = krb5
krb5_server = dc.sb.lan
krb5_passwd = dc.sb.lan
krb5_validate = True

Ich hoffe, dass mir jemand mit mehr Wissen über Samba/AD ein paar Tipps geben kann, wie ich dieses Problem am besten beheben kann. Gibt es Tools, mit denen ich der Grundursache auf den Grund gehen kann?

Aktualisierung 2

Nach dem Hinzufügen der folgenden Zeile in sssd.conf auf dem Ubuntu-Client-Computer

ad_gpo_access_control = permissive

Ich kann mich endlich über die Befehlszeile anmelden sudo login. Aber leider versucht es nach einer erfolgreichen Anmeldung, Richtlinien herunterzuladen, was fehlschlägt.

Last login: Wed Apr 17 14:15:01 CEST 2024 on pts/2
Applying machine settings
ERROR Error from server: error while updating policy: can't get policies for "legion-ubuntu": failed to retrieve the list of GPO (exited with 1): exit status 1
Failed to bind - LDAP client internal error: NT_STATUS_INVALID_PARAMETER
Failed to connect to 'ldap://dc.sb.lan' with backend 'ldap': LDAP client internal error: NT_STATUS_INVALID_PARAMETER
Failed to open session: (1, 'LDAP client internal error: NT_STATUS_INVALID_PARAMETER') 

Failure setting user credentials

Parallel behebe ich die Fehlersuche und hoffe natürlich auf eine Antwort, bei der mir jemand einfach sagt, was ich wo beheben muss ;-). Wenn ich es schaffe, das selbst herauszufinden, werde ich die Frage aktualisieren.

Antwort1

Nachdem ich Ubuntu auf meinem Client-PC neu installiert und alle Schritte noch einmal durchgegangen war, konnte ich das Problem beheben. Ich kann mich jetzt bei meinem Samba AD-Server anmelden.

Ich musste zwei Dinge tun, die von den offiziellen Dokumenten abweichen:

  • Korrigieren Sie krb5.conf vor dem Beitritt
  • nach dem Beitritt die sssd.conf patchen

Als ersten Schritt muss ich Reverse-DNS in krb5 auf dem Ubuntu-Client deaktivieren.

[libdefaults]
    rdns = false

Als nächstes musste ich nach dem erfolgreichen Beitritt zur Domäne sudo realm -v join <domain-name>die folgende Zeile in sssd.conf auf dem Ubuntu-Client hinzufügen

# THIS IS MANDATORY to fix "permission denied" when PAM tries to authenticate
# https://serverfault.com/questions/872542/debugging-sssd-login-pam-sss-system->
# suggested work around in question
ad_gpo_access_control = permissive

Sobald ich das getan habe und sssd neu gestartet habe

sudo systemctl restart sssd

Ich kann mich anmelden

bp@legion-ubuntu:~ % sudo login                   
legion-ubuntu.sb.lan login: SB\bp
Password: 
Welcome to Ubuntu 23.04 (GNU/Linux 6.2.0-37-generic x86_64)

Es treten keine Fehler mehr auf. Wenn ich mich als lokaler Benutzer abmelde, kann ich mich endlich als AD-Benutzer anmelden

verwandte Informationen