AADDC SLDAP-Implementierung

AADDC SLDAP-Implementierung

Ich bin neu beim Active Directory-Dienst von Azure und seine Abstraktion ist für mich im Moment ein kleines Rätsel. Ich versuche, alle meine AWS EC2-Server (Linux) über LDAP (für SSH-Verbindungen) zu authentifizieren.

Ich habe das SLDAP erfolgreich eingerichtet, die öffentliche IP-Adresse ist bereits generiert und ich habe sie an einen FQDN (dc.mydomain.com) gebunden. Auf meinem AWS EC2 Linux-Server habe ich sssd und realmd installiert, um eine SSH AD-Authentifizierung durchführen zu können.

Hier ist die von mir verwendete LDAP-Zeichenfolge, die bestätigt, dass SLDAp ordnungsgemäß funktioniert:

ldapsearch -H ldaps://directory.mydomain.com:636 -Z -d 5 -x -b "dc=mydomain,dc=com" -D "[email protected]" -W

Der obige Befehl liefert alle Informationen zu den im Azure AD aufgeführten DN, CN, OU und DC.

Wenn ich versuche, PAM auf CENTOS7 zu verwenden, scheint es, als binddnwürde es zu keinem Ergebnis führen results()– das von mir verwendete existiert auf jeden Fall dn, da es dasjenige ist, das in den LDAP-Suchergebnissen angezeigt wird.

Gibt es diesbezüglich bei MS Azure Einschränkungen/Begrenzungen?

Antwort1

Es gibt keine Dokumentation, in der angegeben wird, dass es Beschränkungen für Azure AD DS mit sicherem LDAP gibt.

In der Dokumentation steht lediglich, dass Sie über das Internet mit sicherem LDAP auf die verwaltete Domäne zugreifen können. Außerdem steht dort nicht, dass es von Anwendungen zur Authentifizierung gegenüber Azure AD verwendet werden kann.

Alternativ können Sie anstelle von Azure AD DS mit LDAPS auch Azure AD für Linux-Anmeldungen verwenden (siehe Link unten). Sie finden sogar Beispielcode vonHier.

https://channel9.msdn.com/Blogs/Open/Using-Azure-AD-for-Linux-logins

AKTUALISIEREN

Es funktioniert, indem ich Azure AD für die SSH-Anmeldung auf meinem RHEL 7.3 verwende. Nachfolgend finden Sie die Schritt-für-Schritt-Anleitung, um Azure AD für Linux-Anmeldungen nutzbar zu machen.

Voraussetzungen

  • Ein Azure AD-Verzeichnis wurde erstellt und einige Benutzer sind vorhanden
  • Node.js und npm sind in der Linux-VM installiert
  • Eine Verzeichnisanwendung wurde erstellt (nativer Clienttyp) und Sie haben die Client-ID
  • Ihre PAM-Distribution hat pam_exec.so

Benutzerbereitstellung

Sie müssen den folgenden Befehl verwenden, um das Azure AD-Konto hinzuzufügen. Dadurch wird sichergestellt, dass der Benutzer, mit dem Sie sich anmelden, für NSS sichtbar ist.

sudo useradd -m <user>

Installieren

Sie können das Tarfile herunterladen vonhttps://github.com/bureado/aad-loginUnd:

sudo tar xzf aad-login_0.1.tar.gz -C /
cd /opt/aad-login
sudo npm install

Konfigurieren

  1. Öffnen Sie /opt/aad-login/aad-login.js und ändern Sie die folgenden Elemente

var-Verzeichnis = "********.onmicrosoft.com"; // Der Domänenname des Verzeichnisses
var Client-ID = "****-****-*****-*****-************"; //Die Client-ID der in Azure AD registrierten Anwendung
AutoritätHostUrl: 'https://login.microsoftonline.com' //Die neueste URL des Endpunkts

  1. Öffnen Sie /etc/pam.d/sshd und fügen Sie die folgende Regel hinzu

Auth ausreichend pam_exec.so expose_authtok /usr/local/bin/aad-login

Notiz:Für Utuntu müssen Sie die Regel in /etc/pam.d/common-auth hinzufügen

  1. In CentOS 7.x (und anderen SELinux-fähigen Distributionen) müssen Sie die Richtlinie deaktivieren, indem Sie den folgenden Befehl ausführen:

    sudo setenforce 0

verwandte Informationen