我遇到的基本问题是我有超过100,000个无用的机器证书让我的CA陷入混乱,我想删除它们,而不删除所有的证书,或者提前跳过服务器,并使一些有用的证书无效那里。
这是因为我们的企业根CA(2008 R2)接受了一些默认设置,并使用GPO
自动注册证书的客户端计算机,以允许802.1x
身份validation到我们的公司无线networking。
事实certificate,默认的Computer (Machine)
Certificate Template
将很高兴地允许机器重新注册,而不是指示他们使用他们已有的证书。 这对于那些希望使用证书颁发机构的人(我)来说,造成了很多问题,因为每次工作站重新启动时,都会有一个日志。
(侧面的滚动条正在撒谎,如果将其拖动到底部,则屏幕暂停并加载接下来的几十个证书。)
有谁知道如何从Windows Server 2008R2 CA中删除 100,000个左右时间有效的现有证书?
现在,当我去删除一个证书时,我收到一个错误,它不能被删除,因为它仍然有效。 因此,理想情况下,暂时绕过这个错误的方法就是马克·亨德森(Mark Henderson)提供了一种在清除障碍后用脚本删除证书的方法。
(撤销它们不是一种select,因为它只是将它们移动到Revoked Certificates
,我们需要能够查看它们,而且它们也不能从撤销的“文件夹”中删除。)
我试了一下@MarkHenderson的网站 , 这个网站很有希望,而且提供了更好的证书pipe理能力,但是还是没有达到目标。 在我的情况下,似乎是证书仍然是“时间有效的”(尚未过期),所以CA不想让它们从存在中删除,这也适用于撤销的证书,所以撤销他们所有,然后删除他们也不会工作。
我也用Google-Fufind了这个technet博客 ,但不幸的是,他们似乎只需要删除大量的证书请求,而不是实际的证书。
最后,现在,时间跳转CA,所以我想摆脱的证书到期,因此可以删除与工具在网站马克链接是不是一个很好的select,因为会过期我们使用的一些有效的证书必须手动发放。 所以这是比重buildCA更好的select,但不是一个好的select。
我还没有尝试过,但是有一个来自https://pspki.codeplex.com/的PKI PowerShell提供程序,它有许多有趣的function,如Revoke-Certificate
和Remove-Request
:
从证书颁发机构(CA)数据库删除指定的证书请求行。
通过删除不必要的证书请求,可以使用此命令来减lessCA数据库的大小。 例如,删除失败的请求和未使用的过期证书。
注意:删除特定的行后,将无法检索任何属性,并且(如有必要)撤销相应的证书。
我的直觉告诉你,擦拭它,重新开始,你会很快乐,但如果你已经改变了它存储在AD(这是理想的)证书,你擦拭,重新开始,你仍然会有一吨伪造的证书,他们只会在AD附加到所有的计算机帐户,而不是在您的CA. 所以这是一个混乱的方式真的。
强硬的呼叫。 你可以像你说的那样撤销,但我不相信你完全可以从CA mmc中删除它们。
如果你重新开始,按照这里的步骤尽可能干净地做
因为我不想在第二天再发现另外〜4000个证书,所以我通过删除默认的“计算机”“证书模板”并添加了Publish certificate in Active Directory
设置为Publish certificate in Active Directory
的副本来停止肆意证书颁发Do not automatically reenroll if a duplicate certificate exists in Active Directory
。
还有一个问题就是如何摆脱已经存在的问题,但这只是一个开始。