AADDC SLDAP 實施

AADDC SLDAP 實施

我是 Azure 的 Active Directory 服務的新手,目前它的抽象對我來說有點困惑。我想做的是讓我的所有 AWS EC2 伺服器(Linux)透過 LDAP(用於 SSH 連線)進行身份驗證。

我已成功設定 SLDAP,公共 IP 位址已生成,並且已將其綁定到 FQDN (dc.mydomain.com)。在我的AWS EC2 Linux伺服器上,我安裝了sssd和realmd以便能夠完成SSH AD身份驗證。

這是我使用的 ldap 字串,用於確認 sldap 正常工作:

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

上面的命令提供了有關 Azure AD 上列出的 DN、CN、OU、DC 的所有資訊。

當我嘗試在 CENTOS7 上使用 PAM 時,似乎無法解決binddn任何問題results()——可以肯定的是,dn我正在使用的 PAM 存在,因為它是 ldapsearch 結果中顯示的。

MS Azure 對此有限制嗎?

答案1

沒有文件說明使用安全 LDAP 的 Azure AD DS 有限制。

從文件中,它只說您可以透過 Internet 使用安全 LDAP 存取託管網域。此外,它沒有聲明應用程式可以使用它來針對 Azure AD 進行身份驗證。

作為替代方案,您可以考慮從下面的連結使用 Azure AD for Linux 登錄,而不是使用 LDAPS 的 Azure AD DS。您甚至可以找到範例程式碼這裡

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

更新

它的工作原理是在我的 RHEL 7.3 上使用 Azure AD 進行 SSH 登入。以下是使 Azure AD 適用於 Linux 登入的逐步指南。

先決條件

  • 已建立 Azure AD 目錄,並且存在一些用戶
  • Node.js 和 npm 安裝在 Linux 虛擬機器中
  • 目錄應用程式已建立(本機用戶端類型)並且您擁有用戶端 ID
  • 您的 PAM 發行版具有 pam_exec.so

使用者配置

您需要使用以下命令新增 Azure AD 帳戶,這可確保您將用於登入的使用者對 NSS 可見。

sudo useradd -m <user>

安裝中

您可以從以下位置下載 tar 文件https://github.com/bureado/aad-login和:

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

配置

  1. 開啟/opt/aad-login/aad-login.js,並更改以下項目

var 目錄 = '********.onmicrosoft.com'; // 目錄域名
var clientid = '****-****-*****-*****-************'; //在Azure AD中註冊的應用程式的用戶端ID
權威主機網址:'https://login.microsoftonline.com' //端點的最新URL

  1. 開啟/etc/pam.d/sshd並新增以下規則

驗證足夠的 pam_exec.so次暴露_authtok /usr/local/bin/aad-login

筆記:對於 Utuntu,您需要在 /etc/pam.d/common-auth 中新增規則

  1. 在 CentOS 7.x(和其他啟用 SELinux 的發行版)中,您需要透過執行下列命令來停用該原則:

    須藤 setenforce 0

相關內容