CA Windows 2008 R2 et inscription automatique : comment se débarrasser de plus de 100 000 certificats problématiques ?

Le problème de base que j’ai est que j’ai plus de 100 000 certificats machine inutiles qui encombrent ma CA, et j’aimerais les supprimer, sans supprimer tous les certificats, ni avancer le temps du serveur et invalider certains des certificats utiles qui s’y trouvent.

Cela est survenu à la suite de l’acceptation de quelques valeurs par défaut avec notre CA racine d’entreprise (2008 R2) et de l’utilisation d’une GPO pour inscrire automatiquement les machines clientes pour des certificats permettant l’authentification 802.1x sur notre réseau sans fil d’entreprise.

Il s’avère que le modèle de certificat Computer (Machine) par défaut permettra volontiers aux machines de se réinscrire au lieu de les diriger vers l’utilisation du certificat qu’elles ont déjà. Cela crée un certain nombre de problèmes pour la personne (moi) qui espérait utiliser l’autorité de certification comme plus qu’un journal de chaque fois qu’une station de travail a été redémarrée.

(La barre de défilement sur le côté ment, si vous la faites glisser vers le bas, l’écran se met en pause et charge les prochaines dizaines de certificats.)

Quelqu’un sait-il comment SUPPRIMER environ 100 000 certificats existants et encore valides dans le temps d’une CA Windows Server 2008R2 ?

Lorsque j’essaie de supprimer un certificat maintenant, j’obtiens une erreur indiquant qu’il ne peut pas être supprimé car il est encore valide. Idéalement, un moyen de contourner temporairement cette erreur, car Mark Henderson a fourni un moyen de supprimer les certificats avec un script une fois cet obstacle franchi.

(Les révoquer n’est pas une option, car cela ne fait que les déplacer vers Certificats révoqués, que nous devons pouvoir visualiser, et ils ne peuvent pas non plus être supprimés du « dossier » révoqué.)

Mise à jour :

J’ai essayé le site que @MarkHenderson a recommandé, qui est prometteur et offre une bien meilleure gérabilité des certificats, mais ne résout pas tout à fait le problème. Le point de blocage dans mon cas semble être que les certificats sont encore « temporellement valides » (pas encore expirés), donc la CA ne veut pas les laisser être supprimés de l’existence, et cela s’applique aussi aux certificats révoqués, donc les révoquer tous puis les supprimer ne fonctionnera pas non plus.

J’ai aussi trouvé cet article de blog technet avec mon Google-Fu, mais malheureusement, ils n’avaient apparemment qu’à supprimer un très grand nombre de demandes de certificats, pas de certificats réels.

Enfin, pour le moment, avancer le temps de la CA pour que les certificats que je veux supprimer expirent, et puissent donc être supprimés avec les outils du site que Mark a recommandé, n’est pas une bonne option, car cela ferait expirer un certain nombre de certificats valides que nous utilisons et qui doivent être émis manuellement. C’est donc une meilleure option que de reconstruire la CA, mais pas une excellente option.


Source : Server Fault,)

Je n’ai pas essayé cela, mais il existe un fournisseur PowerShell PKI sur https://pspki.codeplex.com/ qui a beaucoup de fonctions intéressantes comme Revoke-Certificate suivi de Remove-Request :

Supprime la ligne de demande de certificat spécifiée de la base de données de l’autorité de certification (CA).

Cette commande peut être utilisée pour réduire la taille de la base de données CA, en supprimant les demandes de certificats inutiles. Par exemple, supprimer les demandes échouées et les certificats expirés inutilisés.

Note : après avoir supprimé une ligne particulière, vous ne pourrez plus récupérer aucune propriété et (si nécessaire) révoquer le certificat correspondant.