certutil -ping échoue avec un délai de 30 secondes - que faire?

10

Le magasin de certificats sur ma boîte Win7 est constamment suspendu. Observer:


C: \> 1.cmd

C: \> certutil -? | findstr / i ping
  -ping - Interface de demande de services de certificats Ping Active Directory
  -pingadmin - Interface d'administration des services de certificats Ping Active Directory

C: \> set PROMPT = $ P ($ t) $ G

C: \ (13: 04: 28.57)> certutil -ping
CertUtil: -ping échec de la commande: 0x80070002 (WIN32: 2)
CertUtil: Le système ne peut pas trouver le fichier spécifié.

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

CertUtil: -pingadmin commande ÉCHEC: 0x80070002 (WIN32: 2)
CertUtil: Le système ne peut pas trouver le fichier spécifié.

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

C: \>

Explications:

  • La première commande vous montre qu'il existe –pinget des –pingadminparamètres à certutil
  • L'essai de n'importe quel paramètre ping échoue avec un délai de 30 secondes (l'heure actuelle est affichée dans l'invite)

Ceci est un sérieux problème. Il vis toute la communication sécurisée dans mon application. Si quelqu'un sait comment cela peut être résolu - veuillez partager.

Merci.

PS

1.cmd est simplement un lot de ces commandes:

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

EDIT1

J'ai réussi à localiser l' API de fenêtres uniques à l'origine du problème - DsGetDcName

Selon le windbg, le certutil -ping l' invoque ainsi:

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

Sur mon poste de travail, il expire pendant 30 secondes, puis renvoie le code d'erreur 1355, qui est ERROR_NO_SUCH_DOMAIN Aucun contrôleur de domaine n'est disponible pour le domaine spécifié ou le domaine n'existe pas.

Sur une autre machine, qui est accidentellement un serveur Windows 2003, il retourne presque immédiatement avec le nom de contrôleur de domaine correct dans la DOMAIN_CONTROLLER_INFOstructure renvoyée .

Maintenant, la question est ce qui manque sur mon poste de travail pour que cette API trouve le contrôleur de domaine correct?

marque
la source

Réponses:

0

Veuillez vérifier les éléments suivants

  1. Pouvez-vous exécuter à certutil -ping -config "cadnsname\CA logical name"partir des hôtes affectés.
  2. Qui a les autorisations pour demander des certificats à l'AC (quelqu'un a-t-il changé les utilisateurs authentifiés en utilisateurs du domaine)?
  3. Examinez les autorisations DCOM pour vous assurer que les utilisateurs authentifiés disposent des autorisations appropriées sur l'autorité de certification. Autorisations DCOM sur le groupe d'accès DCOM de l'autorité de certification pour le service de certificats:

    Niveau d'autorisation d'accès -> Accès local - Autoriser, accès à distance - Autoriser le niveau d'autorisation de lancement et d'activation -> Lancement à distance - Autoriser, activation à distance - Autoriser

Pour plus de détails, vous pouvez vous référer à l'URL ci-dessous pour le dépannage.

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

Mit Naik
la source
Je suis désolé d'exposer mon ignorance, mais comment puis-je connaître le nom CADNS? Il serait utile que vous indiquiez comment découvrir le "nom logique \ nom logique CA". Pouvez-vous expliquer un peu plus les étapes que vous proposez? Merci.
marquer le
Malheureusement, je n'ai pas suivi les étapes décrites dans l'article que vous avez joint, car il est probablement destiné aux ordinateurs Windows Server ayant accès à Active Directory. Le mien est un poste de travail Windows 7 sans un tel accès.
marquez le
J'ai encore modifié la question.
marquez le
certutil -adca
2019