Итак, у нас есть ситуация, когда подрядчик развернул около 200 компьютеров с Windows 7, которые были неправильно клонированы. Сертификат SCCM не был удален с эталонной машины до того, как он был подготовлен системой. Теперь из-за повторяющихся сертификатов консоль SCCM повсюду завалена недопустимыми записями об устройствах.
Мне нужно написать сценарий удаления плохого сертификата на всех этих машинах, но я не знаю, как это сделать из командной строки. Я предполагаю, что использую Certutil.exe, но я не могу понять, какие аргументы передать. Я также знаком с WMI и VBScript, поэтому, если бы я мог использовать класс сертификата, он бы тоже работал.
Я ценю любую помощь, которую может предложить
Вы можете использовать PSEXEC для удаленной переустановки клиента SCCM и сброса ключа для всех 200 компьютеров.
psexec @c:\lists\NeedSccm.txt -u domain\admin -h -d "\\SCCMSERVER\SHARE$\ccmsetup.exe" RESETKEYINFORMATION=TRUE
Я не знаю о SCCM сертификат, так как наши клиенты используют автоматически запрашиваемый сертификат домена для аутентификации клиента. Тем не менее, я все еще могу помочь. Перейдите в хранилище сертификатов в PowerShell, например:
PS Cert:\LocalMachine\My> Get-ChildItem
Directory: Microsoft.PowerShell.Security\Certificate::LocalMachine\My
Thumbprint Subject
---------- -------
A34F86ACC5HAHAYEAHRIGHTF731B798EF24F6D6D0B CN=BIG-HOMIEPC, OU=Computers, DC=eng, DC=mit, DC=edu
5DAC23B07490B5C602EC4F04GEDDABOUDIT94FF41A CN=localhost
Оказавшись там, просто удалите сертификат с правильной темой,
PS Cert:\LocalMachine\My> Get-ChildItem | where {$_.Subject -like "*DC=end, DC=mit, DC=edu*"} | Remove-Item -WhatIf
Это также будет работать в сценарии.