Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

setspn -s http/<NDES-Server-FQDN> <DOMAIN>\ndes
setspn -s http/<NDES-Server-NetBIOS> <DOMAIN>\ndes

Anchor
certTempl
certTempl
Подготовка шаблонов сертификатов

По умолчанию 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

Image AddedImage Added

Помимо сертификатов для конечных устройств, у службы NDES имеются собственные служебные сертификаты (Registration Authority Certificates), необходимые для работы сервиса. Эти сертификаты по умолчанию выпускаются сроком на 2 года. После истечения этого срока могут возникнуть проблемы с восстановлением работоспособности службы NDES даже после перевыпуска данных сертификатов. Чтобы избежать данных проблем сертификаты после окончания срока действия нужно перевыпускать выполнив последовательность дейтсвий описанную ниже.

Алгоритм перевыпуска сертификатов

Note
Если дубликаты шаблонов не создавались в процессе развертывания сервиса рекомендуется создать дубликаты, как описано в разделе "Подготовка шаблонов сертификатов"
Выпуск сертификата Шифрования CEP (Хранилище компьютера)

Этот сертификат машинный, перевыпуск простой.

  1.     Нажмите Win + R и введите certlm.msc (Локальный компьютер).
  2.     Перейдите в Личное -> Сертификаты.
  3.     Нажмите правой кнопкой -> Все задачи -> Запросить новый сертификат.
  4.     Выберите шаблон Шифрование CEP для NDES (CEPEncryptionNDES) и выпустите его.
Выпуск сертификата Агента заявок (Хранилище пользователя)
Note
Выполнять это нужно под той учетной записью, которой на Центре Сертификации даны права на чтение и заявку этого шаблона (обычно это сервисная учетная запись NDES или администратор).
  1. Нажмите Win + R и введите certmgr.msc (Текущий пользователь).
  2. Перейдите в Личное -> Сертификаты.
  3. Нажмите правой кнопкой -> Все задачи -> Запросить новый сертификат.
  4. Найдите шаблон Агент регистрации Exchange Enrollment Agent (Offline requestавтономный запрос) для NDES.
  5. КРИТИЧНОВАЖНО!: Не нажимайте сразу "Заявка"! Нажмите на ссылку "Для регистрации в этом сертификате требуются дополнительные сведения..." (или кнопку Свойства).
  6. Перейдите на вкладку Закрытый ключ (Private Key), разверните раздел Параметры ключа (Key options) и обязательно поставьте галочку Сделать закрытый ключ экспортируемым (Make private key exportable).
  7. Нажмите ОК и выпустите сертификат.
  8. В той же пользовательской оснастке (certmgr.msc) кликните правой кнопкой мыши по только что выпущенному сертификату Агента -> Все задачи -> Экспорт.
  9. В мастере экспорта обязательно выберите «Да, экспортировать закрытый ключ» (Yes, export the private key).
  10. Оставьте формат .pfx по умолчанию.
  11. Задайте пароль для защиты файла ключа и сохраните .pfx файл на рабочий стол.
  12. Откройте оснастку компьютера (certlm.msc) -> Личное -> Сертификаты.
  13. Правый клик -> Все задачи -> Импорт.
  14. Укажите путь к сохраненному .pfx файлу, введите пароль и завершите импорт.

...

  1. В машинной оснастке (certlm.msc) найдите старые (истекшие) сертификаты Шифрования CEP и Агента и удалите их.
  2. Убедитесь, что в certlm.msc осталось ровно два новых сертификата (Шифрование и Агент).
  3. Вернитесь в пользовательскую оснастку (certmgr.msc) и удалите сертификат Агента оттуда тоже (вы его уже перенесли, там он больше не нужен и может только запутать систему в будущем).

В итоге должно остаться только два сертификата с назначением "Агент запроса сертификата": один из шаблона "Шифрофание CEP для NDES" и один из шаблона "Агент регистрации Exchange (автономный запрос) для NDES":

Image Added

Назначение прав на закрытые ключи

...

Другие возможные проблемы

Проблема

Симптомы

Причина

Решение

 

Ошибка 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.