在不同的目标域上运行`certutil -DCInfo`

似乎运行certutil.exe -DCInfo Verify将检查login的用户帐户的域中的所有域控制器的证书。

在我们的AD森林中,我们有一些领域。 我只有其中两个独特的帐户,但具有所有这些的pipe理权限。

有没有一种方法可以运行命令来定位与我login的域不同的域名,还是我真的必须在每个域名中都有一个帐户?

或者,还有另外一种方法来实现相同的目标?

certutil在调用它的用户上下文中工作。

除非您可以想办法模拟其他用户 – 这可能需要调用Win32 API,否则在每个域上都无法实现您想要的function似乎不太可能。 这是一个SO问题 ,如果你决定沿着这条路线走下去,这个问题可能会对你有帮助。

  1. 如果您使用psexec在属于您要定位的每个域的域控制器上执行certutil.exe命令,使用来自林中另一个域的受信任域pipe理员帐户,会发生什么情况?

  2. 或者,您可以使用您的域pipe理员权限在每个域中创build一个svc_certchk帐户吗?

在遇到同样的问题后,我可以通过Powershell获得我需要的信息,这要感谢别人的博客文章。

信用 :(如果您阅读本文时仍然在线,则为原始链接)

http://blogs.technet.com/b/heyscriptingguy/archive/2011/02/16/use-powershell-and-net-to-find-expired-certificates.aspx

码:

 $store = New-Object System.Security.Cryptography.X509Certificates.X509Store("\\dc1\My","LocalMachine") $store.Open("ReadOnly") $store.Certificates 

然后您可以parsing生成的证书对象。 可能会遇到一些访问问题,但是在我的环境中,对于2003和2008服务器使用企业pipe理员帐户,这一切都可以正常工作。