...
setspn -s http/<NDES-Server-FQDN> <DOMAIN>\ndes
setspn -s http/<NDES-Server-NetBIOS> <DOMAIN>\ndes
| Anchor | ||||
|---|---|---|---|---|
|
По умолчанию NDES использует шаблон IPSECIntermediateOffline. Рекомендуется дублировать шаблон (Duplicate Template) и создать собственный (например, NDES-GeneralPurpose).
Так же рекомендуется дублировать шаблоны CEPEncryption и EnrollmentAgentOffline - в данном примере это будут дубликаты с именами CEPEncryptionNDES и EnrollmentAgentOfflineNDES
Отображаемое имя сертификата сделаем путем добавления к отображаемому имени родительского шаблона текста "для NDES". Т.е. наши шаблоны будут отображены в интерфейсе как "Шифрование CEP для NDES" и "Агент регистрации Exchange (автономный запрос) для NDES"
У шаблона EnrollmentAgentOfflineNDES необходимо разрешить экспорт закрытого ключа/.
У шаблонов CEPEncryptionNDES и EnrollmentAgentOfflineNDES необходимо убрать требование одобрения диспетчером сертификатов ЦС.
...
Мастер установки не производит тонкую настройку пула приложений IIS. Эти шаги необходимо выполнить вручную:
Пул приложений IIS
...
Откройте Диспетчер служб IIS (IIS Manager), перейдите в Пулы приложений (Application Pools). Найдите пулы SCEP и MSCEP. Откройте их Дополнительные параметры (Advanced Settings). В строке Удостоверение (Identity) проверьте, что указана учетная запись ndes
...
Ошибка: Вернется код ошибки HTTP 403, 401, 500 или 503.
| Note |
|---|
URL http://<имя хоста службы NDES>/certsrv/mscep_admin/mscep.dll предназначен для генерации одноразового пароля вызова (Challenge Password или OTP). Этот пароль необходим для того, чтобы доказать серверу, что устройство имеет право запросить сертификат. К нему обращаются системные администраторы (через веб-браузер) или серверы управления мобильными устройствами (MDM, например, Microsoft Intune, VMware Workspace ONE). Для этого требуется аутентификация с учетной записбю имеющей права на запрс сертификатов в вашем центре сертификации (CA), Данный URL не должен публиковвыться в открытый интернет без дополнительной защиты. URL http://<имя хоста службы NDES>/certsrv/mscep/mscep.dll предназначен непосредствевнно для приема запросов на подпись сертификатов отконечных устройств и выдачи сертификаторв по пртоколу SCEP. Он не требует аутентификации, а безопасность обеспечивается на уровне протокола SCEP - устройство встраивает полученный ранее Challenge Password внутрь зашифрованного пакета (в атрибут challengePassword запроса PKCS#10). Данный URL может быть опубликоан и часто публикуется во внешнуую сеть (например через reverse proxy) для того, чтобы внешние устройства могли получать сертификаты. |
Просмотр журналов
- Просмотр событий (Event Viewer) -> Журналы Windows (Windows Logs) -> Приложение (Application).
Фильтр по источнику NetworkDeviceEnrollmentService. - Журналы IIS: C:\inetpub\logs\LogFiles\W3SVC1\.
Здесь фиксируются статусы HTTP-ответов и факты поступления запросов. - Журналы ЦС (CA):
На сервере ЦС в Просмотре событий ищите ошибки от источника CertificationAuthority.
...
Проблемы сертификатов NDES
Помимо сертификатов для конечных устройств, у службы NDES имеются собственные служебные сертификаты (Registration Authority Certificates), необходимые для работы сервиса. Эти сертификаты по умолчанию выпускаются сроком на 2 года. После истечения этого срока могут возникнуть проблемы с восстановлением работоспособности службы NDES даже после перевыпуска данных сертификатов. Чтобы избежать данных проблем сертификаты после окончания срока действия нужно перевыпускать выполнив последовательность дейтсвий описанную ниже.
Алгоритм перевыпуска сертификатов
| Note |
|---|
| Если дубликаты шаблонов не создавались в процессе развертывания сервиса рекомендуется создать дубликаты, как описано в разделе "Подготовка шаблонов сертификатов" |
Выпуск сертификата Шифрования CEP (Хранилище компьютера)
Этот сертификат машинный, перевыпуск простой.
- Нажмите Win + R и введите
certlm.msc(Локальный компьютер). - Перейдите в Личное -> Сертификаты.
- Нажмите правой кнопкой -> Все задачи -> Запросить новый сертификат.
- Выберите шаблон Шифрование CEP для NDES (CEPEncryptionNDES) и выпустите его.
Выпуск сертификата Агента заявок (Хранилище пользователя)
| Note |
|---|
| Выполнять это нужно под той учетной записью, которой на Центре Сертификации даны права на чтение и заявку этого шаблона (обычно это сервисная учетная запись NDES или администратор). |
- Нажмите
Win + Rи введитеcertmgr.msc(Текущий пользователь). - Перейдите в Личное -> Сертификаты.
- Нажмите правой кнопкой -> Все задачи -> Запросить новый сертификат.
- Найдите шаблон Агент регистрации Exchange Enrollment Agent (Offline requestавтономный запрос) для NDES.
- КРИТИЧНОВАЖНО!: Не нажимайте сразу "Заявка"! Нажмите на ссылку "Для регистрации в этом сертификате требуются дополнительные сведения..." (или кнопку Свойства).
- Перейдите на вкладку Закрытый ключ (Private Key), разверните раздел Параметры ключа (Key options) и обязательно поставьте галочку Сделать закрытый ключ экспортируемым (Make private key exportable).
- Нажмите ОК и выпустите сертификат.
- В той же пользовательской оснастке (certmgr.msc) кликните правой кнопкой мыши по только что выпущенному сертификату Агента -> Все задачи -> Экспорт.
- В мастере экспорта обязательно выберите «Да, экспортировать закрытый ключ» (Yes, export the private key).
- Оставьте формат .pfx по умолчанию.
- Задайте пароль для защиты файла ключа и сохраните .pfx файл на рабочий стол.
- Откройте оснастку компьютера (certlm.msc) -> Личное -> Сертификаты.
- Правый клик -> Все задачи -> Импорт.
- Укажите путь к сохраненному .pfx файлу, введите пароль и завершите импорт.
...
- В машинной оснастке (certlm.msc) найдите старые (истекшие) сертификаты Шифрования CEP и Агента и удалите их.
- Убедитесь, что в certlm.msc осталось ровно два новых сертификата (Шифрование и Агент).
- Вернитесь в пользовательскую оснастку (certmgr.msc) и удалите сертификат Агента оттуда тоже (вы его уже перенесли, там он больше не нужен и может только запутать систему в будущем).
В итоге должно остаться только два сертификата с назначением "Агент запроса сертификата": один из шаблона "Шифрофание CEP для NDES" и один из шаблона "Агент регистрации Exchange (автономный запрос) для NDES":
Назначение прав на закрытые ключи
...
Другие возможные проблемы
Проблема | Симптомы | Причина | Решение
|
|---|---|---|---|
Ошибка HTTP 500 или 503 при открытии страницы mscep.dll | Пул приложений SCEP останавливается сразу после обращения. В логах IIS фиксируется статус 503. | IIS не может запустить процесс от имени сервисной учетной записи, либо не загружен профиль. | В Локальной политике безопасности дайте ndes право Вход в качестве пакетного задания. В пуле IIS установите Загрузить профиль пользователя в True. |
Ошибки Event ID 29, 31 или 32 от источника NDES | Служба сообщает, что не может получить требуемые сертификаты. | NDES не может выписать себе сертификаты при старте, либо указаны неверные имена шаблонов. | Проверьте системные имена шаблонов в реестре. Убедитесь, что ndes имеет права Чтение и Заявка, и шаблоны опубликованы на ЦС. |
Устройства получают HTTP 401 (Unauthorized) | Сетевое оборудование не может получить сертификат (ошибки 401.x в логах IIS). | Неверная настройка методов аутентификации в IIS. | В IIS (приложение certsrv/mscep) отключите Проверку подлинности Windows и включите Анонимную проверку подлинности. |
Запросы зависают ("Pending") или "RPC Server Unavailable" | Запросы остаются в папке Ожидающие запросы ЦС. | В шаблоне включено ручное одобрение, или заблокирован RPC-трафик между NDES и ЦС. | Снимите флажок "Требуется одобрение" в шаблоне. Откройте порты TCP 135 и динамические порты RPC (TCP 49152-65535). |
Исчерпание лимита паролей при массовом развертывании | Часть устройств успешно получает сертификаты, остальные отклоняются по таймауту. | NDES по умолчанию кэширует не более 5 динамических паролей (срок жизни 60 минут). | В реестре увеличьте значение параметра PasswordMax (например, до 50) и PasswordValidity. |
Внезапная остановка сервиса (Истекли RA-сертификаты) | Сервис перестал обрабатывать SCEP-запросы. Event ID 30, 31, 33. | Истек срок действия служебных сертификатов агента регистрации NDES. | Откройте certlm.msc -> Личные -> Сертификаты. Запросите новые сертификаты вручную, используя соответствующие шаблоны. |
Конфликт старых и новых RA-сертификатов | Служба не функционирует. Ошибка о наличии нескольких сертификатов (Multiple certificates found). | NDES обнаружил в хранилище как старые, так и новые сертификаты с требуемыми OID. | Удалите старые/невалидные сертификаты агента регистрации (должно остаться строго 2). Выполните iisreset. |
Нет доступа к закрытому ключу сертификатов RA | Ошибки о недоступности криптопровайдера. | ndes не имеет прав на чтение закрытых ключей перевыпущенных служебных сертификатов. | В certlm.msc (Управление закрытыми ключами) добавьте учетную запись ndes и предоставьте ей права Чтение на оба сертификата. |
Ошибка SSL/TLS на стороне клиента | Оборудование не может установить HTTPS соединение с NDES. | Проблемы с SSL-сертификатом веб-сервера IIS (самоподписан, истек, не совпадает SAN). | В IIS проверьте Привязки (Bindings). Для HTTPS используйте валидный сертификат, выданный доверенным ЦС, с корректным SAN. |




