Необходимо изменить пароль учетной записи администратора домена. Есть ли сценарий или инструмент PS, который может проверить все серверы в домене, чтобы узнать, где эта учетная запись используется для запуска служб?
Спасибо,
Сейчас хорошее время, чтобы прекратить работу служб в качестве учетной записи администратора домена.
Import-Module ActiveDirectory
Foreach ($comp in Get-ADComputer -Filter *)
{
$services = Get-WMIObject win32_service -Computername $comp
Foreach($svc in $services)
{
If($svc.StartName -eq "DOMAIN\Administrator" -or $svc.StartName -eq "Administrator@DOMAIN")
{
Write-Error "THE $svc.Name SERVICE ON $comp IS RUNNING AS DOMAIN ADMIN"
}
}
}
Что-то в этом роде. Предполагая, что вы запускаете сценарий с достаточными учетными данными, и у вас есть подключение к сети и доступ к брандмауэру и тому подобное на каждый компьютер из того места, где вы запускаете сценарий, он должен пройти через все компьютеры в вашем домене, получить все службы для каждого компьютера, и предупреждать, когда обнаруживает, что работает от имени администратора домена. Измените в соответствии с вашими потребностями.
Изменить: если по какой-то причине вы не можете этого сделать, вы можете получить некоторую приличную информацию, просматривая журналы событий безопасности на всех контроллерах домена, ища входы в систему с учетной записью администратора домена и компьютером, с которого они приходят.
Я протестировал несколько способов, например sc.exe, cmdlet, C #, в первый раз служба не запускается. Сообщение об ошибке: «Ошибка входа в систему». Вручную введите пароль в службу и нажмите кнопку ОК в диалоговом окне запроса. Сервис можно запустить.
Позже удалите службу, смените учетную запись и пароль, методы, которые я перечислил выше, будут работать.