PKI Microsoft: Monitorizar certificados generados/revocados con certutil

En una entidad mediana, en la que habitualmente se generen certificados, el uso de la mmc para consultar certificados activos se vuelve impracticable.

Si ademas quieres automatizar algun proceso que alerte cuando un certificado esta a punto caducar, la solución es el util comando certutil (valga la redundancia).

Podemos sacar remotamente un listado de certificados vigentes con:
(desde un Windows en Inglés)
certutil -config "Servidor\NombreEntidadCertificadora" -view -out "Request ID, serial number, Request Submission Date, Certificate Expiration Date, Request Common Name, Requester Name, CertificateTemplate" -restrict "Certificate Expiration Date >= %date%" > cert.txt
(desde un Windows en Castellano)
certutil -config "Servidor\NombreEntidadCertificadora" -view -out "Id. de petici¢n, N§ de serie, Fecha efectiva de certificado, Fecha de caducidad de certificado, Solicitar nombre com£n, Nombre del solicitante, Plantilla de certificado,Fecha de revocaci¢n, Raz¢n para la revocaci¢n" -restrict "Disposici¢n de petici¢n=20, Fecha de caducidad de certificado >= %date%" > cert.txt
Para sacar un listado de certificados revocados:
(desde un Windows en Inglés)
certutil -config "Servidor\NombreEntidadCertificadora" -view -out "Request ID, serial number, Request Submission Date, Certificate Expiration Date, Request Common Name, Requester Name, CertificateTemplate" -restrict "Certificate Expiration Date >= %date%"  > cert.txt
(desde un Windows en Castellano)
certutil -config "Servidor\NombreEntidadCertificadora" -view -out "Id. de petici¢n, N§ de serie, Fecha efectiva de certificado, Fecha de caducidad de certificado, Solicitar nombre com£n, Nombre del solicitante, Plantilla de certificado,Fecha de revocaci¢n, Raz¢n para la revocaci¢n" -restrict "Disposici¢n de petici¢n=21, Fecha de caducidad de certificado >= %date%"  > cert.txt
Luego podemos hacer un script que recorra el fichero cert.txt y nos avise cuando la fecha de caducidad de algun certificado esté proxima.

Comentarios

  1. Podrias porfavor poner un ejemplo con los parametros completos. Gracias

    ResponderEliminar
  2. Buenos días. Estoy intentando sacar datos concretos de mis certificados digitales. Los que mas me interesa es el sujeto y la fecha de caducidad del certificado. Pero por ahora solo he encontrado este comando " certutil -user -store My " . Si no es mucha molestia, podría decirnos que comando seria para sacar datos concretos de los certificados digitales ? Un saludo y gracias.

    ResponderEliminar
    Respuestas
    1. Ese comando te saca los datos que necesitas (claro y muchos otros, tal y como ocurre en este articulo)
      de ahi la importancia de parsear el resultado.
      por suerte powershell puede tratar el almacen de certificados como un provider igual que si fuera una carpeta, asi que puedes sacar los datos con un simple get-childitem:
      get-childitem cert:\currentuser\my|select subject, notafter

      Eliminar

Publicar un comentario