Linux-Domain-Verbindungsfehler - AWS Directory Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Linux-Domain-Verbindungsfehler

Die folgenden Informationen können Ihnen beim Beheben einiger Fehlermeldungen helfen, die beim Verbinden einer EC2-Instance mit Ihrem Verzeichnis in AWS Managed Microsoft AD auftreten können.

Linux-Instances können nicht in die Domain eingebunden oder authentifiziert werden

Ubuntu 14.04-, 16.04- und 18.04-Instanzen müssen im DNS rückwärts auflösbar sein, bevor ein Bereich mit Microsoft Active Directory funktionieren kann. Andernfalls könnte eines der beiden folgenden Szenarien eintreten:

Szenario 1: Ubuntu-Instances, die noch keinem Bereich beigetreten sind

Für Ubuntu-Instances, die versuchen, einem Bereich beizutreten, könnte der sudo realm join-Befehl nicht die erforderlichen Berechtigungen für die Verbindung mit der Domain liefern und den folgenden Fehler ausgeben:

! Authentifizierung bei Active Directory ist fehlgeschlagen: SASL(-1): allgemeiner Fehler: GSSAPI-Fehler: Es wurde ein ungültiger Name angegeben (Erfolg) adcli: konnte keine Verbindung zur Domain EXAMPLE.COM herstellen: Authentifizierung bei Active Directory ist fehlgeschlagen: SASL(-1): allgemeiner Fehler: GSSAPI-Fehler: Es wurde ein ungültiger Name angegeben (Success) ! Unzureichende Berechtigungen, um den Domainbereich zu verbinden: Der Bereich konnte nicht verbunden werden: Unzureichende Berechtigungen, um die Domain zu verbinden

Szenario 2: Ubuntu-Instances, die einem Bereich beigetreten sind

Bei Ubuntu-Instanzen, die bereits mit einer Microsoft Active Directory-Domäne verknüpft sind, schlagen Versuche, mithilfe der Domänenanmeldedaten per SSH auf die Instanz zuzugreifen, möglicherweise mit folgenden Fehlern fehl:

$ ssh admin@EXAMPLE.COM@198.51.100

no such identity: /Users/username/.ssh/id_ed25519: No such file or directory

admin@EXAMPLE.COM@198.51.100's password:

Permission denied, please try again.

admin@EXAMPLE.COM@198.51.100's password:

Wenn Sie sich mit einem öffentlichen Schlüssel bei der Instance anmelden und /var/log/auth.log prüfen, werden möglicherweise die folgenden Fehlermeldungen in Bezug auf den nicht gefundenen Benutzer angezeigt:

May 12 01:02:12 ip-192-0-2-0 sshd[2251]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=203.0.113.0

May 12 01:02:12 ip-192-0-2-0 sshd[2251]: pam_sss(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=203.0.113.0 user=admin@EXAMPLE.COM

May 12 01:02:12 ip-192-0-2-0 sshd[2251]: pam_sss(sshd:auth): received for user admin@EXAMPLE.COM: 10 (User not known to the underlying authentication module)

May 12 01:02:14 ip-192-0-2-0 sshd[2251]: Failed password for invalid user admin@EXAMPLE.COM from 203.0.113.0 port 13344 ssh2

May 12 01:02:15 ip-192-0-2-0 sshd[2251]: Connection closed by 203.0.113.0 [preauth]

kinit funktioniert für den Benutzer jedoch. Hier ein Beispiel:

ubuntu@ip-192-0-2-0:~$ kinit admin@EXAMPLE.COM Password for admin@EXAMPLE.COM: ubuntu@ip-192-0-2-0:~$ klist Ticket cache: FILE:/tmp/krb5cc_1000 Default principal: admin@EXAMPLE.COM

Workaround

Der aktuell empfohlene Workaround für beide dieser Szenarien ist, wie nachstehend beschrieben, die Deaktivierung von Reverse DNS in /etc/krb5.conf im Abschnitt [libdefaults]:

[libdefaults] default_realm = EXAMPLE.COM rdns = false

Probleme bei der einseitigen Vertrauensauthentifizierung mit nahtloser Domainverbindung

Wenn Sie eine unidirektionale ausgehende Vertrauensstellung zwischen Ihrem AWS verwalteten Microsoft AD und Ihrem lokalen Active Directory eingerichtet haben, tritt möglicherweise ein Authentifizierungsproblem auf, wenn Sie versuchen, sich mit Ihren vertrauenswürdigen Active Directory-Anmeldeinformationen mit Winbind für die zur Domäne gehörende Linux-Instanz zu authentifizieren.

Fehler

31. Juli 00:00:00 EC2AMAZ-LSMWqT sshd[23832]: Falsches Passwort von user@corp.example.com von xxx.xxx.xxx.xxx Port 18309 ssh2

31. Juli 00:05:00 EC2AMAZ-LSMWqT sshd[23832]: pam_winbind(sshd:auth): Passwort wird abgerufen (0x00000390)

31. Juli 00:05:00 EC2AMAZ-LSMWqT sshd[23832]: pam_winbind(sshd:auth): pam_get_item hat ein Passwort zurückgegeben

31. Juli 00:05:00 EC2Amaz-LSMWQT sshd [23832]: pam_winbind (sshd:auth): Anfrage wbcLogonUser fehlgeschlagen: WBC_ERR_AUTH_ERROR, PAM-Fehler: PAM_SYSTEM_ERR (4), NTSTATUS: **NT_STATUS_OBJECT_NAME_NOT_FOUND**, Fehlermeldung lautete: Der Objektname wurde nicht gefunden.

31. Juli 00:05:00 EC2Amaz-LSMWQT sshd [23832]: pam_winbind (sshd:auth): interner Modulfehler (retval = PAM_SYSTEM_ERR (4), user = 'CORP\ user')

Workaround

Um dieses Problem zu beheben, müssen Sie eine Anweisung in der Konfigurationsdatei des PAM-Moduls auskommentieren oder entfernen (/etc/security/pam_winbind.conf). Gehen Sie dazu wie folgt vor.

  1. Öffnen Sie die Datei /etc/security/pam_winbind.conf in einem Text-Editor.

    sudo vim /etc/security/pam_winbind.conf
  2. Kommentieren Sie die folgende Anweisung aus oder entfernen Sie sie: krb5_auth = yes.

    [global] cached_login = yes krb5_ccache_type = FILE #krb5_auth = yes
  3. Stoppen Sie den Winbind-Service und starten Sie ihn dann erneut.

    service winbind stop or systemctl stop winbind net cache flush service winbind start or systemctl start winbind