Клиенты не могут пройти проверку подлинности на сервере после получения нового сертификата для замены сертификата с истекшим сроком действия на сервере

В этой статье описывается решение проблемы, из-за которой клиенты не могут пройти проверку подлинности на сервере после получения нового сертификата для замены сертификата с истекшим сроком действия на сервере.

Область применения: Windows 10 — все выпуски, Windows Server 2012 R2
Исходный номер базы знаний: 822406

Симптомы

После замены сертификата с истекшим сроком действия новым сертификатом на сервере под управлением службы проверки подлинности в Интернете (IAS) или маршрутизации и удаленного доступа клиенты с расширенной проверкой подлинности Protocol-Transport уровня безопасности (EAP-TLS), настроенные для проверки того, что сертификат сервера больше не может проходить проверку подлинности на сервере. При просмотре Просмотр событий системного входа на клиентском компьютере отображается следующее событие.

Если включить подробное ведение журнала на сервере, на котором выполняется IAS или маршрутизация и удаленный доступ (например, путем выполнения netsh ras set tracing * enable команды), в файле Rastls.log, который создается при попытке клиента пройти проверку подлинности, будут отображаться сведения, аналогичные приведенному ниже.

Примечание.

Если вы используете IAS в качестве сервера Radius для проверки подлинности, это поведение отображается на IAS-сервере. Если вы используете маршрутизацию и удаленный доступ, а маршрутизация и удаленный доступ настроены для проверки подлинности Windows (а не проверки подлинности radius), это поведение отображается на сервере маршрутизации и удаленного доступа.

[1072] 15:47:57:280: CRYPT_E_NO_REVOCATION_CHECK не будет игнорироваться

[1072] 15:47:57:280: CRYPT_E_REVOCATION_OFFLINE не будет игнорироваться

[1072] 15:47:57:280: корневой сертификат не будет проверяться на отзыв

[1072] 15:47:57:280: Сертификат будет проверен на отзыв

[1072] 15:47:57:280:

[1072] 15:47:57:280: EapTlsMakeMessage(Example\client)

[1072] 15:47:57:280: >> Полученный ответ (код: 2) пакет: Id: 11, Length: 25, Type: 0, TLS BLOB-объект длина: 0. Флаги:

[1072] 15:47:57:280: EapTlsSMakeMessage

[1072] 15:47:57:280: EapTlsReset

[1072] 15:47:57:280: изменение состояния на начальное

[1072] 15:47:57:280: GetCredentials

[1072] 15:47:57:280: имя в сертификате: server.example.com

[1072] 15:47:57:312: BuildPacket

[1072] 15:47:57:312: << Отправка запроса (код: 1) пакет: Id: 12, Length: 6, Type: 13, TLS BLOB-объект длина: 0. Флаги: S

[1072] 15:47:57:312: Изменение состояния на SentStart

[1072] 15:47:57:312:

[1072] 15:47:57:312: EapTlsEnd(Example\client)

[1072] 15:47:57:312:

[1072] 15:47:57:312: EapTlsEnd(Example\client)

[1072] 15:47:57:452:

[1072] 15:47:57:452: EapTlsMakeMessage(Example\client)

[1072] 15:47:57:452: >> Полученный ответ (код: 2) пакет: Id: 12, Length: 80, Type: 13, TLS BLOB-объект длина: 70. Флаги: L

[1072] 15:47:57:452: EapTlsSMakeMessage

[1072] 15:47:57:452: MakeReplyMessage

[1072] 15:47:57:452: Перераспределение входного буфера BLOB-объектов TLS

[1072] 15:47:57:452: SecurityContextFunction

[1072] 15:47:57:671: Изменение состояния на SentHello

[1072] 15:47:57:671: BuildPacket

[1072] 15:47:57:671: << Отправка запроса (код: 1) пакет: Id: 13, Длина: 1498, Тип: 13, ДЛИНА BLOB-объекта TLS: 3874. Флаги: LM

[1072] 15:47:57:702:

[1072] 15:47:57:702: EapTlsMakeMessage(Example\client)

[1072] 15:47:57:702: >> Полученный ответ (код: 2) пакет: Id: 13, Length: 6, Type: 13, TLS BLOB-объект длина: 0. Флаги:

[1072] 15:47:57:702: EapTlsSMakeMessage

[1072] 15:47:57:702: BuildPacket

[1072] 15:47:57:702: << Отправка запроса (код: 1) пакет: id: 14, длина: 1498, тип: 13, длина БОЛЬШОго двоичного объекта TLS: 0. Флаги: M

[1072] 15:47:57:718:

[1072] 15:47:57:718: EapTlsMakeMessage(Example\client)

[1072] 15:47:57:718: >> Полученный ответ (код: 2) пакет: Id: 14, Length: 6, Type: 13, TLS BLOB-объект длина: 0. Флаги:

[1072] 15:47:57:718: EapTlsSMakeMessage

[1072] 15:47:57:718: BuildPacket

[1072] 15:47:57:718: << Отправка запроса (код: 1) пакет: Id: 15, Длина: 900, Тип: 13, ДЛИНА BLOB-объекта TLS: 0. Флаги:

[1072] 15:48:12:905:

[1072] 15:48:12:905: EapTlsMakeMessage(Example\client)

[1072] 15:48:12:905: >> Полученный ответ (код: 2) пакет: Id: 15, Length: 6, Type: 13, TLS BLOB-объект длина: 0. Флаги:

[1072] 15:48:12:905: EapTlsSMakeMessage

[1072] 15:48:12:905: MakeReplyMessage

[1072] 15:48:12:905: SecurityContextFunction

[1072] 15:48:12:905: изменение состояния на SentFinished. Ошибка: 0x80090318

[1072] 15:48:12:905: согласование неудачно

[1072] 15:48:12:905: BuildPacket

[1072] 15:48:12:905: << Отправка сбоя (код: 4) пакет: Id: 15, Length: 4, Type: 0, TLS BLOB-объект le

Причина

Эта проблема может возникнуть, если выполняются все следующие условия:

  • IAS или сервер маршрутизации и удаленного доступа является членом домена, но функция автоматического запроса сертификатов (автоматическая регистрация) не настроена в домене. Кроме того, сервер IAS или маршрутизации и удаленного доступа не является членом домена.
  • Вы вручную запрашиваете и получаете новый сертификат для сервера IAS или маршрутизации и удаленного доступа.
  • Сертификат с истекшим сроком действия не удаляется с сервера IAS или маршрутизации и удаленного доступа. Если сертификат с истекшим сроком действия присутствует на сервере IAS или маршрутизации и удаленного доступа вместе с новым действительным сертификатом, проверка подлинности клиента не будет выполнена. Результат "Ошибка 0x80090328", отображаемый в журнале событий на клиентском компьютере, соответствует сроку действия сертификата с истекшим сроком действия.

Обходной путь

Чтобы обойти эту проблему, удалите сертификат с истекшим сроком действия (архив). Для этого выполните следующие действия:

  1. Откройте оснастку консоли управления (MMC), где вы управляете хранилищем сертификатов на IAS-сервере. Если у вас еще нет оснастки MMC для просмотра хранилища сертификатов, создайте ее. Для этого:
    1. Нажмите кнопку Пуск, выберите Выполнить, введите mmc в поле Открыть , а затем нажмите кнопку ОК.

    2. В меню Консоль (меню Файл в Windows Server 2003) выберите Добавить и удалить оснастку, а затем выберите Добавить.

    3. В списке Доступные автономные оснастки выберите Сертификаты, Добавить, Учетная запись компьютера, Далее и Готово.

      Примечание.

      Вы также можете добавить оснастку Сертификаты для учетной записи пользователя и учетной записи службы в эту оснастку MMC.

    4. Выберите Закрыть, а затем — ОК.

  2. В разделе Корневой каталог консоли выберите Сертификаты (локальный компьютер).
  3. В меню Вид выберите Пункты.
  4. Щелкните, чтобы выбрать проверка архивные сертификаты, а затем нажмите кнопку ОК.
  5. Разверните узел Личный, а затем выберите Сертификаты.
  6. Щелкните правой кнопкой мыши просроченный (архивный) цифровой сертификат, выберите Удалить, а затем — Да , чтобы подтвердить удаление сертификата с истекшим сроком действия.
  7. Закройте оснастку MMC. Для выполнения этой процедуры не нужно перезагружать компьютер или какие-либо службы.

Дополнительная информация

Корпорация Майкрософт рекомендует настроить автоматические запросы сертификатов для обновления цифровых сертификатов в организации. Дополнительные сведения см. в статье Автоматическая регистрация сертификатов в Windows XP.