certutil -ping завершается с 30 секундным таймаутом - что делать?

10

Магазин сертификатов на моей коробке Win7 постоянно висит. Заметим:


C: \> 1.cmd

C: \> certutil -? | Findstr / я пинг
  -ping - интерфейс запроса службы сертификации Active Directory
  -pingadmin - интерфейс администратора службы сертификации Active Directory

C: \> установить PROMPT = $ P ($ t) $ G

C: \ (13: 04: 28.57)> certutil -ping
CertUtil: -ping команда СБОЙ: 0x80070002 (WIN32: 2)
CertUtil: система не может найти указанный файл.

C: \ (13: 04: 58.68)> certutil -pingadmin

CertUtil: команда -pingadmin СБОЙ: 0x80070002 (WIN32: 2)
CertUtil: система не может найти указанный файл.

C: \ (13: 05: 28.79)> set PROMPT = $ P $ G

C: \>

Пояснения:

  • Первая команда показывает, что есть –pingи –pingadminпараметры для certutil
  • Попытка любого параметра ping завершится неудачно с тайм-аутом 30 секунд (текущее время отображается в приглашении)

Это серьезная проблема. Это винты все безопасное общение в моем приложении. Если кто знает как это можно исправить - поделитесь пожалуйста.

Спасибо.

PS

1.cmd - просто пакет этих команд:

certutil -? | findstr /i ping
set PROMPT=$P($t)$G
certutil -ping
certutil -pingadmin
set PROMPT=$P$G

EDIT1

Мне удалось определить единый API Windows, который вызывает проблему - DsGetDcName

Согласно windbg, certutil -ping вызывает это так:

PDOMAIN_CONTROLLER_INFO pdci;
DWORD ret = ::DsGetDcName(NULL, NULL, NULL, NULL, DS_DIRECTORY_SERVICE_PREFERRED, &pdci);

На моей рабочей станции время ожидания составляет 30 секунд, а затем возвращается код ошибки 1355 ERROR_NO_SUCH_DOMAIN : «Контроллер домена недоступен для указанного домена или домен не существует».

На другом компьютере, который является случайно Windows Server 2003, он почти сразу возвращается с правильным именем контроллера домена в возвращаемой DOMAIN_CONTROLLER_INFOструктуре.

Теперь возникает вопрос: чего не хватает на моей рабочей станции для того API, чтобы найти правильный контроллер домена?

отметка
источник

Ответы:

0

Пожалуйста, проверьте следующее

  1. Можете ли вы бежать certutil -ping -config "cadnsname\CA logical name"с пострадавших хостов.
  2. У кого есть разрешения на запрос сертификатов в ЦС (кто-то изменил Аутентифицированных пользователей на пользователей домена)?
  3. Посмотрите на разрешения DCOM, чтобы убедиться, что прошедшие проверку пользователи имеют правильные разрешения в ЦС. Разрешения DCOM в ЦС для группы доступа к службе сертификации DCOM:

    Уровень прав доступа -> Локальный доступ - Разрешить, Удаленный доступ - Разрешить уровень разрешений на запуск и активацию -> Удаленный запуск - Разрешить, Удаленная активация - Разрешить

Для более подробной информации вы можете обратиться к ниже URL для устранения неполадок.

http://blogs.technet.com/b/askds/archive/2007/11/06/how-to-troubleshoot-certificate-enrollment-in-the-mmc-certificate-snap-in.aspx

Мит Найк
источник
Извините, что разоблачаю свое невежество, но как я могу узнать имя CADNSName? Было бы полезно, если бы вы указали, как мне найти соответствующее "cadnsname \ CA логическое имя". Можете ли вы объяснить немного больше о шагах, которые вы предлагаете? Спасибо.
Отметить
К сожалению, мне не удалось выполнить действия, описанные в прилагаемой статье, поскольку, вероятно, она предназначена для компьютеров под управлением Windows Server с доступом к Active Directory. Моя рабочая станция Windows 7 без такого доступа.
отметьте
Я отредактировал вопрос дальше.
отметьте
certutil -adca
безымянный