
У меня есть некоторые клиенты в домене, а некоторые нет. Мне нужно знать, как получить, на каких клиентах присутствует определенный локальный пользователь, а затем удалить его. С GPO это довольно просто для клиентов домена, но как насчет тех, кто не в домене? Я знаю команды PowershellПолучить-LocalUserиУдалить-LocalUser, но я бы предпочел не запускать его на каждом ПК. Знаете ли вы какой-либо скрипт, который мог бы помочь?
Спасибо
решение1
Вам необходимо включить PSRemoting (режим рабочей группы) на этих машинах, не входящих в домен, и затем вы можете использовать удаленное взаимодействие, чтобы сделать это, и эти системы должны иметь последнюю версию PSv5 или иметь модуль для локального управления пользователями из MS powershellgallery.com.
Вам все равно придется прикоснуться к каждой из этих машин, чтобы настроить удаленное взаимодействие.
•Включить PowerShell Remoting на автономном компьютере (рабочей группы)
•Удаленное взаимодействие PowerShell между двумя компьютерами рабочей группы
•PowerShell PS Удаленное взаимодействие между автономными компьютерами рабочей группы
•Удаленное взаимодействие PowerShell между двумя компьютерами рабочей группы
Прочитайте каждую статью, чтобы узнать все подробности, но вкратце это:
### Remote Computer
NetConnectionProfile -NetworkCategory Private
Enable-PSRemoting -SkipNetworkProfileCheck -Force
Set-NetFirewallRule –Name "WINRM-HTTP-In-TCP-PUBLIC" –RemoteAddress Any
### Local computer
# Review teh trusted host file
Get-Item WSMan:\localhost\Client\TrustedHosts
# Set the trusted a specific target
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "10.0.2.33" -Force
# Or for several hosts if you don't want to specify them individually
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*" -Force
# Connect to a host
Enter-PSSession -ComputerName 10.0.2.33 -Credential $Credentials
Есть несколько команд PowerShell, которые вы можете выполнитьбез включения удаленного управления:
•Работайте удаленно с Windows PowerShell без использования Remoting или WinRM
Get-WinEvent
Get-Counter
Get-EventLog
Clear-EventLog
Write-EventLog
Limit-EventLog
Show-EventLog
New-EventLog
Remove-EventLog
Get-WmiObject
Get-Process
Get-Service
Set-Service
Get-HotFix
Restart-Computer
Stop-Computer
Add-Computer
Remove-Computer
Rename-Computer
Reset-ComputerMachinePassword
Или воспользуйтесь инструментом MS Sysinternals PSExec.exe: