Назад | Перейти на главную страницу

Реализация AADDC SLDAP

Я новичок в службе Active Directory в Azure, и сейчас эта абстракция для меня немного загадка. Я пытаюсь сделать так, чтобы все мои серверы AWS EC2 (Linux) были аутентифицированы через LDAP (для соединения SSH).

Я успешно настроил SLDAP, публичный IP-адрес уже создан, и я привязал его к полному доменному имени (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 "it@mydomain.com" -W

Приведенная выше команда дает всю информацию о DN, CN, OU, DC, перечисленных в Azure AD.

Когда я пытаюсь использовать PAM на CENTOS7, мне кажется, что binddn не сводится ни к одному results() - наверняка dn Я использую exists, так как он отображается в результатах ldapsearch.

Есть ли в MS Azure ограничения / ограничения на это?

Нет документации, в которой говорится, что существуют ограничения для Azure AD DS с безопасным LDAP.

В документации только сказано, что вы можете получить доступ к управляемому домену с помощью безопасного LDAP через Интернет. Кроме того, в нем не указано, что он может использоваться приложением для аутентификации в Azure AD.

В качестве альтернативы вместо Azure AD DS с LDAPS вы можете изучить возможность входа в Azure AD для Linux по ссылке ниже. Вы даже можете найти образец кода из Вот.

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

ОБНОВИТЬ

Он работает с использованием Azure AD для входа по SSH на моем RHEL 7.3. Ниже приводится пошаговое руководство по настройке работы Azure AD для учетных записей Linux.

Предпосылки

  • Каталог Azure AD создан, и некоторые пользователи существуют
  • Node.js и npm установлены на виртуальной машине Linux.
  • Приложение каталога создано (собственный тип клиента), и у вас есть идентификатор клиента.
  • В вашем дистрибутиве PAM есть pam_exec.so

Подготовка пользователей

Вам необходимо использовать следующую команду для добавления учетной записи Azure AD, это гарантирует, что пользователь, с которым вы будете входить, будет виден NSS.

sudo useradd -m <user>

Установка

Вы можете скачать tarfile из 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 directory = '********. onmicrosoft.com'; // Доменное имя каталога
var clientid = '**** - **** - ***** - ***** - **********'; // Идентификатор клиента приложения, зарегистрированного в Azure AD
AuthorHostUrl: 'https://login.microsoftonline.com' // Последний URL-адрес конечной точки

  1. Откройте /etc/pam.d/sshd и добавьте следующее правило

auth достаточно pam_exec.so expose_authtok / usr / local / bin / aad-login

Примечание: Для Utuntu вам нужно добавить правило в /etc/pam.d/common-auth

  1. В CentOS 7.x (и других дистрибутивах с поддержкой SELinux) вам необходимо отключить политику, выполнив следующую команду:

    sudo setenforce 0