Руководство по настройке защищенного LDAP для управляемого домена доменных служб Microsoft Entra
Для взаимодействия с управляемым доменом доменных служб Microsoft Entra используется протокол LDAP. По умолчанию трафик LDAP не шифруется, что создает проблему безопасности во многих средах.
С помощью доменных служб Microsoft Entra вы можете настроить для управляемого домена протокол LDAPS. При использовании защищенного протокола LDAP трафик шифруется. Защищенный протокол LDAP также называется "LDAP через SSL или TLS".
В этом руководстве показано, как настроить LDAPS для управляемого домена доменных служб.
В этом руководстве описано следующее:
- Создание цифрового сертификата для использования с доменными службами Microsoft Entra
- Включение безопасного протокола LDAP для доменных служб Microsoft Entra
- Настройка защищенного протокола LDAP для работы через общедоступный Интернет.
- Привязка и тестирование защищенного протокола LDAP для управляемого домена
Если у вас еще нет подписки Azure, создайте учетную запись, прежде чем начинать работу.
Необходимые компоненты
Для работы с этим учебником требуются следующие ресурсы и разрешения:
- Активная подписка Azure.
- Если у вас еще нет подписки Azure, создайте учетную запись.
- Клиент Microsoft Entra, связанный с подпиской, либо синхронизирован с локальным каталогом или облачным каталогом.
- При необходимости создайте клиент Microsoft Entra или свяжите подписку Azure с вашей учетной записью.
- Управляемый домен доменных служб Microsoft Entra включен и настроен в клиенте Microsoft Entra.
- При необходимости создайте и настройте управляемый домен доменных служб Microsoft Entra.
- Средство LDP.exe, установленное на компьютере.
- При необходимости установите средства удаленного администрирования сервера (RSAT) для доменных служб Active Directory и LDAP.
- Вам нужны роли Microsoft Entra application Администратор istrator и Groups Администратор istrator Microsoft Entra в клиенте, чтобы включить безопасный протокол LDAP.
Вход в Центр администрирования Microsoft Entra
В этом руководстве описана настройка защищенного LDAP для управляемого домена с помощью Центра администрирования Microsoft Entra. Чтобы приступить к работе, войдите в Центр администрирования Microsoft Entra.
Создание сертификата для защищенного протокола LDAP
Чтобы использовать защищенный протокол LDAP, нужен цифровой сертификат для шифрования при обмене данными. Этот цифровой сертификат применяется к управляемому домену и позволяет таким средствам, как LDP.exe, использовать безопасное зашифрованное соединение при отправке запросов к данным. У вас есть два способа создать сертификат для доступа управляемому домену через защищенный протокол LDAP.
- Сертификат общедоступного ЦС или ЦС предприятия.
- Если ваша организация получает сертификаты из общедоступного ЦС, получите сертификат для защищенного протокола LDAP в том же ЦС. Если вы используете в организации ЦС предприятия, получите сертификат для защищенного протокола LDAP в том же ЦС.
- Общедоступный ЦС работает только при наличии настраиваемого DNS-имени для управляемого домена. Если доменное имя DNS для управляемого домена заканчивается на .onmicrosoft.com, вы не сможете создать цифровой сертификат для защиты связи с этим доменом по умолчанию. Домен .onmicrosoft.com принадлежит корпорации Майкрософт, поэтому общедоступный ЦС не будет выдавать для него сертификаты. Для данного сценария создайте самозаверяющий сертификат и используйте его для настройки защищенного протокола LDAP.
- Самозаверяющий сертификат, который вы можете создать самостоятельно.
- Этот подход удобен для тестирования, и в этом руководстве мы используем именно его.
Создаваемый или запрашиваемый сертификат должен отвечать приведенным ниже требованиям. Управляемый домен будет работать неправильно, если вы укажете недопустимый сертификат при включении защищенного протокола LDAP.
- Надежный издатель. Сертификат должен быть выдан центром сертификации, являющимся доверенным для компьютеров, подключающихся к управляемому домену по защищенному протоколу LDAP. Это может быть общедоступный ЦС или ЦС предприятия, который является доверенным для этих компьютеров.
- Срок действия. Сертификат должен быть допустимым в течение по крайней мере следующих 3–6 месяцев. Защищенный доступ LDAP к управляемому домену не будет прерван после истечения срока действия сертификата.
- Имя субъекта. Имя субъекта сертификата должно состоять из имени управляемого домена. Например, если имя домена — aaddscontoso.com, имя субъекта сертификата должно быть *.aaddscontoso.com.
- Dns-имя или альтернативное имя субъекта сертификата должно быть диким карта сертификатом, чтобы обеспечить правильную работу защищенного LDAP с доменными службами. Контроллеры домена используют случайные имена и их можно свободно удалять и добавлять в соответствии с требованиями к доступности службы.
- Использование ключа. Сертификат необходимо настроить для цифровых подписей и шифрования ключей.
- Назначение сертификата. Сертификат должен быть допустимым для аутентификации на сервере TLS.
Существует несколько средств для создания самозаверяющего сертификата, например OpenSSL, Keytool, MakeCert, командлета New-SelfSignedCertificate и т. д.
Для целей этого руководства мы создадим самозаверяющий сертификат для защищенного протокола LDAP, используя командлет New-SelfSignedCertificate.
Откройте окно PowerShell с правами администратора и выполните приведенные ниже команды. Замените переменную $dnsName DNS-именем, которое используется для управляемого домена, например aaddscontoso.com:
# Define your own DNS name used by your managed domain
$dnsName="aaddscontoso.com"
# Get the current date to set a one-year expiration
$lifetime=Get-Date
# Create a self-signed certificate for use with Azure AD DS
New-SelfSignedCertificate -Subject *.$dnsName `
-NotAfter $lifetime.AddDays(365) -KeyUsage DigitalSignature, KeyEncipherment `
-Type SSLServerAuthentication -DnsName *.$dnsName, $dnsName
В этом примере выходных данных сообщается, что сертификат успешно создан и сохранен в локальном хранилище сертификатов (LocalMachine\MY):
PS C:\WINDOWS\system32> New-SelfSignedCertificate -Subject *.$dnsName `
>> -NotAfter $lifetime.AddDays(365) -KeyUsage DigitalSignature, KeyEncipherment `
>> -Type SSLServerAuthentication -DnsName *.$dnsName, $dnsName.com
PSParentPath: Microsoft.PowerShell.Security\Certificate::LocalMachine\MY
Thumbprint Subject
---------- -------
959BD1531A1E674EB09E13BD8534B2C76A45B3E6 CN=aaddscontoso.com
Выбор и экспорт нужных сертификатов
Для защищенного протокола LDAP сетевой трафик шифруется с использованием инфраструктуры открытых ключей (PKI).
- Закрытый ключ применяется к управляемому домену.
- Этот закрытый ключ используется для расшифровки трафика защищенного протокола LDAP. Закрытый ключ следует применять только к управляемому домену, не распространяя его на клиентские компьютеры.
- Сертификат, который содержит закрытый ключ, использует файл в формате PFX.
- При экспорте сертификата необходимо указать алгоритм шифрования TripleDES-SHA1. Это применимо только к PFX-файлу и не влияет на алгоритм, используемый самим сертификатом. Обратите внимание, что параметр TripleDES-SHA1 доступен только начиная с Windows Server 2016.
- Открытый ключ применяется к клиентским компьютерам.
- Этот открытый ключ используется для шифрования трафика защищенного протокола LDAP. Открытый ключ можно распространять на клиентские компьютеры.
- Сертификаты без закрытого ключа используют файл в формате CER.
Эта пара закрытого и открытого ключей гарантирует, что взаимодействие будет возможно только между теми компьютерами, для которых вы его настроите. Если вы используете общедоступный ЦС или ЦС предприятия, вам будет выдан сертификат с закрытым ключом, который можно применить к управляемому домену. Открытый ключ должен быть известен клиентским компьютерам и настроен на них как доверенный.
В рамках этого руководства вы уже создали самозаверяющий сертификат с закрытым ключом, и теперь примените его закрытый и общедоступный компоненты.
Экспорт сертификата для доменных служб Microsoft Entra
Прежде чем применять для управляемого домена цифровой сертификат, созданный на предыдущем шаге, экспортируйте PFX-файл сертификата, который содержит закрытый ключ.
Откройте диалоговое окно Выполнить, нажав клавиши Windows + R.
Откройте консоль управления (MMC), введя команду mmc в диалоговом окне Выполнить, а затем щелкните ОК.
В окне Контроль учетных записей пользователей щелкните Да, чтобы запустить MMC от имени администратора.
В меню Файл выберите Добавить или удалить оснастку....
В мастере Оснастка диспетчера сертификатов выберите Учетная запись компьютера и щелкните Далее.
На странице Выбор компьютера выберите Локальный компьютер (на котором выполняется консоль) и щелкните Готово.
В диалоговом окне Добавление и удаление оснасток нажмите кнопку ОК, чтобы добавить оснастку "Сертификаты" в MMC.
В окне MMC разверните узел Корень консоли. Щелкните Сертификаты (локальный компьютер), затем последовательно разверните узлы Личное и Сертификаты.
Здесь вы увидите самозаверяющий сертификат, созданный на предыдущем шаге, например aaddscontoso.com. Щелкните этот сертификат правой кнопкой мыши и выберите Все задачи > Экспорт...
В мастере экспорта сертификатов щелкните Далее.
Необходимо экспортировать закрытый ключ для сертификата. Включение защищенного протокола LDAP для управляемого домена завершится ошибкой, если экспортируемый сертификат не содержит закрытого ключа.
На странице Экспорт закрытого ключа выберите Да, экспортировать закрытый ключ и щелкните Далее.
Управляемые домены поддерживают для файла сертификата только формат PFX, который содержит закрытый ключ. Не экспортируйте сертификат в формате CER-файла, который не содержит закрытого ключа.
На странице Формат экспортируемого файла для экспортируемого сертификата установите переключатель в положение Файл обмена личной информацией — PKCS #12 (.PFX). Установите флажок Включить, по возможности, все сертификаты в путь сертификации:
Так как этот сертификат используется для шифровки данных, необходимо тщательно контролировать доступ к нему. Для защиты закрытого ключа сертификата можно использовать пароль. Без правильного пароля сертификат не удастся применить к службе.
На странице Безопасность выберите вариант Пароль для защиты PFX-файла сертификата. Для шифрования необходимо использовать алгоритм TripleDES-SHA1. Введите и подтвердите пароль, а затем щелкните Далее. Этот пароль вы примените при работе со следующим разделом, чтобы включить защищенный протокол LDAP для управляемого домена.
При экспорте с помощью командлета PowerShell Export-PfxCertificate необходимо передать флаг -CryptoAlgorithmOption с TripleDES_SHA1.
На странице экспорта файла укажите имя файла и расположение, в котором вы хотите экспортировать сертификат, например
C:\Users\<account-name>\azure-ad-ds.pfx
. Запомните пароль и расположение PFX-файла, так как эти сведения потребуются при дальнейшей работе.На следующей странице щелкните Готово, чтобы экспортировать сертификат в PFX-файл. После успешного экспорта сертификата появится диалоговое окно с подтверждением.
Не закрывайте окно MMC, которое пригодится нам в следующем разделе.
Экспорт сертификата для клиентских компьютеров
На клиентских компьютерах необходимо настроить доверие к издателю сертификата для защищенного протокола LDAP, чтобы подключаться к управляемому домену по протоколу LDAPS. Клиентские компьютеры нуждаются в сертификате для успешного шифрования данных, расшифровываемых доменными службами. Если вы используете общедоступный ЦС, компьютер будет автоматически доверять издателям сертификатов и иметь соответствующий сертификат.
В рамках этого руководства вы используете самозаверяющий сертификат, который создали вместе с закрытым ключом на предыдущем шаге. Теперь нам нужно экспортировать самозаверяющий сертификат и установить его в хранилище доверенных сертификатов на клиентском компьютере.
Вернитесь в консоль MMC и откройте хранилище Сертификаты (локальный компьютер) > Личные > Сертификаты. Здесь вы увидите самозаверяющий сертификат, созданный на предыдущем шаге, например aaddscontoso.com. Щелкните этот сертификат правой кнопкой мыши и выберите Все задачи > Экспорт...
В мастере экспорта сертификатов щелкните Далее.
Поскольку для клиентов закрытый ключ не требуется, на странице Экспорт закрытого ключа выберите Нет, не экспортировать закрытый ключ и щелкните Далее.
На странице Формат экспортируемого файла для экспортируемого сертификата выберите Файлы X.509 (.CER) в кодировке Base-64.
На странице экспорта файла укажите имя файла и расположение, в котором вы хотите экспортировать сертификат, например
C:\Users\<account-name>\azure-ad-ds-client.cer
.На следующей странице щелкните Готово, чтобы экспортировать сертификат в CER-файл. После успешного экспорта сертификата появится диалоговое окно с подтверждением.
Теперь сертификат в формате CER-файла можно распространять на клиентские компьютеры, которые должны доверять защищенному подключению LDAP к управляемому домену. Давайте установим сертификат на локальном компьютере.
Откройте проводник и перейдите к расположению, в котором вы сохранили файл. CER-файл сертификата, например
C:\Users\<account-name>\azure-ad-ds-client.cer
.Щелкните CER-файл сертификата правой кнопкой мыши, а затем выберите Установить сертификат.
В мастере импорта сертификатов выберите вариант для сохранения сертификата на локальном компьютере, а затем щелкните Далее.
При появлении запроса выберите Да, чтобы разрешить компьютеру вносить изменения.
Выберите Автоматически выбрать хранилище на основе типа сертификата, а затем щелкните Далее.
На следующей странице щелкните Готово, чтобы импортировать CER-файл сертификата. После успешного импорта сертификата появится диалоговое окно с подтверждением.
Включение безопасного протокола LDAP для доменных служб Microsoft Entra
Итак, вы завершили создание и экспорт цифрового сертификата, который содержит закрытый ключ, и настроили доверие к подключению на клиентском компьютере. Теперь можно включить защищенный протокол LDAP в управляемом домене. Чтобы включить защищенный протокол LDAP для управляемого домена, сделайте следующее.
В Центре администрирования Microsoft Entra введите доменные службы в поле "Поиск ресурсов". Выберите доменные службы Microsoft Entra из результата поиска.
Выберите нужный управляемый домен, например aaddscontoso.com
В левой части окна доменных служб Microsoft Entra выберите Secure LDAP.
По умолчанию защищенный доступ LDAP к управляемому домену отключен. Измените значение параметра Защищенный протокол LDAP на Включено.
По умолчанию доступ к управляемому домену через Интернет по защищенному протоколу LDAP отключен. Включая доступ по защищенному протоколу LDAP через Интернет, вы сделаете домен уязвимым к атакам из Интернета методом подбора пароля. На следующем шаге мы настроим группу безопасности сети, чтобы ограничить доступ только из определенного диапазона IP-адресов.
Переведите переключатель Разрешить доступ по защищенному протоколу LDAP через Интернет в положение Включено.
Щелкните значок папки рядом с полем PFX-файл с сертификатом защищенного протокола LDAP. Перейдите в папку, где расположен PFX-файл, а затем выберите созданный на предыдущем шаге сертификат, который содержит закрытый ключ.
Внимание
Как отмечалось в предыдущем разделе о требованиях к сертификатам, вы не можете использовать сертификат общедоступного ЦС с доменом .onmicrosoft.com, который настроен по умолчанию. Домен .onmicrosoft.com принадлежит корпорации Майкрософт, поэтому общедоступный ЦС не будет выдавать для него сертификаты.
Убедитесь, что сертификат имеет правильный формат. В противном случае платформа Azure выдаст ошибку проверки сертификата при включении защищенного протокола LDAP.
Введите пароль для расшифровки PFX-файла, который вы настроили на предыдущем шаге при экспорте сертификата в PFX-файл.
Щелкните Сохранить, чтобы включить защищенный протокол LDAP.
Появится уведомление о том, что выполняется настройка защищенного протокола LDAP для управляемого домена. Вы не сможете изменить другие параметры управляемого домена, пока не завершится эта операция.
Включение защищенного протокола LDAP для управляемого домена займет несколько минут. Если предоставленный сертификат защищенного протокола LDAP не соответствует требуемому критерию, действие по включению защищенного протокола LDAP для управляемого домена завершается сбоем.
Типичные примеры ошибок: указано неправильное доменное имя, для шифрования сертификата используется алгоритм, отличный от TripleDES-SHA1, срок действия сертификата истек или истекает в ближайшее время. Вы можете повторно создать сертификат с правильными параметрами и включить защищенный протокол LDAP с указанием обновленного сертификата.
Замена сертификата с истекающим сроком действия
- Создайте заменяющий сертификат для защищенного протокола LDAP, выполнив эти действия.
- Чтобы применить сертификат замены к доменным службам, в меню слева для доменных служб Microsoft Entra в Центре администрирования Microsoft Entra выберите Secure LDAP и нажмите кнопку "Изменить сертификат".
- Распространите сертификат на все клиенты, которые подключаются по защищенному протоколу LDAP.
Блокировка доступа по защищенному протокол LDAP через Интернет
Предоставление доступа к управляемому домену по защищенному протоколу LDAP через Интернет создает угрозу безопасности. Управляемый домен доступен из Интернета через порт 636. Мы рекомендуем ограничить доступ к управляемому домену только из определенных IP-адресов, имеющих отношение к конкретной среде. Для ограничения доступа по защищенному протоколу LDAP можно использовать правило группы безопасности сети Azure.
Давайте создадим правило, которое разрешит входящий доступ по защищенному протоколу LDAP через TCP-порт 636 только для указанного набора IP-адресов. Правило DenyAll с низким приоритетом по умолчанию применяется ко всему остальному входящему трафику из Интернета, а значит доступ к управляемому домену по защищенному протоколу LDAP можно будет получить только с указанных адресов.
В Центре администрирования Microsoft Entra найдите и выберите группы ресурсов.
Выберите группу ресурсов, например myResourceGroup, а затем выберите группу безопасности сети, например aaads-nsg.
Отобразится список существующих правил безопасности для входящих и исходящих подключений. В левой части окна свойств для группы безопасности сети выберите Параметры > Правила безопасности для входящего трафика.
Щелкните Добавить и создайте правило, открывающее TCP-порт 636. Для повышения безопасности выберите IP-адреса в качестве источника и укажите допустимый IP-адрес или диапазон адресов, принадлежащих вашей организации.
Параметр Значение Оригинал IP-адреса IP-адреса источника или диапазоны в нотации CIDR Допустимый IP-адрес или диапазон для вашей среды Диапазоны исходных портов * Назначение Любые Диапазоны портов назначения 636 Протокол TCP Действие Allow Приоритет 401 Имя. AllowLDAPS Когда все будет готово, щелкните Добавить, чтобы сохранить и применить это правило.
Настройка зоны DNS для внешнего доступа
Разрешив доступ через Интернет по защищенному протоколу LDAP, измените параметры зоны DNS, чтобы клиентские компьютеры могли найти этот управляемый домен. Внешний IP-адрес защищенного протокола LDAP указан на вкладке Свойства для управляемого домена.
В настройках внешнего поставщика DNS создайте запись, разрешающую имя узла (например, ldaps), в этот внешний IP-адрес. Чтобы проверить работу на локальном компьютере, вы можете сначала создать такую запись в файле hosts системы Windows. Чтобы успешно изменить файл узлов на локальном компьютере, откройте Блокнот от имени администратора, а затем откройте файлC:\Windows\System32\drivers\etc\hosts
.
Следующий пример записи DNS с внешним поставщиком DNS или в файле локальных узлов разрешает трафик для ldaps.aaddscontoso.com
внешнего IP-адреса 168.62.205.103
:
168.62.205.103 ldaps.aaddscontoso.com
Проверка запросов к управляемому домену
Чтобы подключиться к управляемому домену, создать привязку к нему и выполнить поиск по протоколу LDAP, используйте средство LDP.exe. Оно входит в пакет средств удаленного администрирования сервера (RSAT). Дополнительные сведения см. в статье об установке средств удаленного администрирования сервера.
- Откройте LDP.exe и подключитесь к управляемому домену. Выберите Подключение и щелкните Подключить....
- Введите имя DNS для подключения к управляемому домену по защищенному протоколу LDAP, которое вы создали на предыдущем шаге, например ldaps.aaddscontoso.com Чтобы использовать защищенный протокол LDAP, укажите для параметра Порт значение 636, а также установите флажок SSL.
- Щелкните ОК, чтобы подключиться к управляемому домену.
Затем выполните привязку к управляемому домену. Пользователи (и учетные записи служб) не могут выполнять простые привязки LDAP, если вы отключили синхронизацию хэшей паролей NTLM для управляемого домена. См. сведения об отключении синхронизации хэшей паролей NTLM в статье Отключение слабых шифров и синхронизации хэшей паролей для защиты управляемого домена доменных служб Azure AD.
- Выберите пункт меню Подключение, а затем Привязать....
- Укажите учетные данные учетной записи пользователя, которая относится к управляемому домену. Введите пароль для этой учетной записи и нужный домен, например aaddscontoso.com.
- Для параметра Тип привязки выберите вариант Привязать с учетными данными.
- Щелкните ОК, чтобы завершить привязку к управляемому домену.
Чтобы просмотреть объекты, сохраненные в управляемом домене, сделайте следующее:
Выберите пункт меню Представление и щелкните Дерево.
Оставьте поле BaseDN пустым и щелкните OК.
Выберите контейнер, например Пользователи AADDC, щелкните его правой кнопкой мыши и выберите пункт Поиск.
Сохраните все автоматически заполненные значения и щелкните Запуск. Результаты запроса отображаются в окне справа, как показано в следующем примере выходных данных:
Чтобы выполнить прямой запрос к конкретному контейнеру, выберите пункт меню Представление > Дерево, затем укажите значение BaseDN, например OU=AADDC Users,DC=AADDSCONTOSO,DC=COM или OU=AADDC Computers,DC=AADDSCONTOSO,DC=COM. Дополнительные сведения о форматировании и создании запросов см. в статье с основными сведениями о запросах LDAP.
Примечание.
Если используется самозаверяющий сертификат, добавленный в Доверенные корневые центры сертификации для LDAPS, убедитесь, что он работает с LDP.exe.
Очистка ресурсов
Если ранее в рамках этого руководства вы добавляли запись DNS в файл hosts на локальном компьютере для проверки подключения, удалите эту запись и добавьте запись в основную зону DNS. Чтобы удалить запись из локального файла hosts, сделайте следующее:
- На локальном компьютере откройте Блокнот с правами администратора.
- Перейдите к файлу и откройте его
C:\Windows\System32\drivers\etc\hosts
. - Удалите строку с записью, которую вы добавили ранее, например
168.62.205.103 ldaps.aaddscontoso.com
.
Устранение неполадок
Если произойдет ошибка и отобразится сообщение о том, что LDAP.exe не удалось подключиться, попробуйте решить эту проблему, проверив различные элементы подключения:
- Конфигурация контроллера домена.
- Конфигурация клиента.
- Сеть
- Создание сеанса TLS.
Для соответствия имени субъекта сертификата контроллер домена будет использовать доменное имя доменных служб (а не доменное имя Microsoft Entra) для поиска его хранилища сертификатов. Например, из-за опечаток контроллер домена не сможет выбрать правильный сертификат.
Клиент попытается установить TLS-подключение, используя указанное вами имя. При том трафик должен проходить весь путь. Контроллер домена отправляет открытый ключ для сертификата аутентификации сервера. Нужно правильно настроить использование сертификата. Имя, зарегистрированное как имя субъекта, должно быть совместимым, чтобы клиент доверял тому, что сервер соответствует DNS-имени, к которому вы подключаетесь (то есть можно указать подстановочный знак без опечаток), и клиент должен доверять издателю. Вы можете проверить наличие проблем в этой цепочке в системном журнале в компоненте "Просмотр событий" и отфильтровать события, где указан источник SChannel. Вместе все эти компоненты образуют сеансовый ключ.
Дополнительные сведения см. в статье Подтверждение протокола TLS.
Следующие шаги
Из этого руководства вы узнали, как:
- Создание цифрового сертификата для использования с доменными службами Microsoft Entra
- Включение безопасного протокола LDAP для доменных служб Microsoft Entra
- Настройка защищенного протокола LDAP для работы через общедоступный Интернет.
- Привязка и тестирование защищенного протокола LDAP для управляемого домена