Как узнать, на каких компьютерах в моей сети активна учетная запись локального администратора

Как узнать, на каких компьютерах в моей сети активна учетная запись локального администратора

Как гласит заголовок: Как узнать, на каких компьютерах в моей сети активна учетная запись локального администратора? Потому что, согласно запросу консультанта по безопасности, мы должны знать и, если возможно, отключить каждую учетную запись локального администратора на каждом из 300+ ноутбуков/настольных компьютеров в сети.

Есть команда net useили wmiдля решения этой проблемы? Можно ли настроить рекурсивно, чтобы опрашивать каждый компьютер в сети? У нас есть контроллер домена, если это поможет, но всегда есть несколько групп с компьютерами, не присоединенными к домену.

решение1

Я вижу здесь несколько проблем.

  1. На компьютерах, не присоединенных к домену, должно бытьаУчетная запись администратора активна, даже если она не является учетной записью с именем Администратор.
  2. На компьютерах, не присоединенных к домену, для выполнения запроса вам понадобится учетная запись.
  3. Как правило, вы можете выполнить запрос только тогда, когда компьютер подключен к сети, поэтому вам придется запланировать регулярное выполнение запросов, и даже в этом случае вы не сможете гарантировать, что получите их все, поскольку вы не можете гарантировать, что ПК будут подключены к сети в тот период времени, когда вы запускаете запрос.

Что, как говорится

На ПК с Windows 10 вы можете выполнить следующее, чтобы получить учетную запись с именем Администратор и проверить, включена ли она:

Get-LocalUser -Name Administrator | Select-Object Name, Enabled

Эту команду можно использовать в скрипте, подобном следующему, чтобы получить статус компьютера.

[pscustomobject]@{
    Computername = $env:Computername
    AdminEnabled = Get-LocalUser -Name "Administrator" | Select-Object -ExpandProperty Enabled
} | Export-CSV -Path "\\a\share\where\you\can\put\this\$($env:Computername).csv"

Затем вы можете запустить указанную выше команду как сценарий запуска в домене (имейте в виду, что общий свернутый файл должен быть доступен для записи для группы «Компьютеры домена»)

На ПК вне домена вам немного не повезло. Если у вас есть учетная запись, которая может удаленно входить в ряд систем, вы можете использовать что-то вроде этого:

$APSCredentialWhichHasTheRightsToDoThis = Get-Credential
Invoke-Command -Computername "RemotePC" -ScriptBlock {Get-LocalUser -Name "Administrator"} -Credential $APSCredentialWhichHasTheRightsToDoThis

чтобы получить статус удаленного компьютера.

Связанный контент