Como encontrar todas as máquinas com um nome de usuário via prompt de comando

0

Conheço minhas credenciais de usuário, elas são User:Johannes , Passwort:Pass12345 .
Eu posso encontrar os grupos dos quais faço parte com net .

net user /domain Johannes

Isso me dá os grupos em que estou.

*BELIEVER51
*SOUTHHAMPTONBASKETBALL
*NEVERSAYDIE

Eu sei que o grupo BELIEVER51 tem acesso a ARE42 .
Eu posso conectar-me a ARE42 via protocolo de área de trabalho remota usando meu arquivo de lote.

cmdkey /generic:"ARE42" /user:"Johannes" /pass:"Pass12345"
start mstsc /v:ARE42

Tudo o que tenho é um prompt de comando do windows.
Como posso descobrir todos os servidores aos quais posso me conectar?

    
por Johannes 13.09.2016 / 17:14

1 resposta

2

Se você pode usar o powershell, você pode executar este script:

Import-Module ActiveDirectory
$Servers = Get-ADComputer -filter {OperatingSystem -like "*Server*"} -Properties OperatingSystem
$MyServers = @()

$User = "Johannes"
$Password = "Pass12345"

$Credential = New-Object System.Management.Automation.PSCredential $User,($Password | ConvertTo-SecureString -AsPlainText -Force)
foreach($Server in $Servers) {
   if( New-PSSession $Server.Name -Credential $Credential -ErrorAction Ignore ) {
      $MyServers += $Server.Name
    }
}

Ele tentará criar uma sessão em cada servidor no domínio usando as credenciais fornecidas. Se você puder se conectar a ele, ele terá sucesso e adicionará o nome do servidor a $ MyServers. Você pode então exportar a variável para uma lista como esta:

$MyServers | Out-File "c:\Temp\MyServers.txt"
    
por 13.09.2016 / 18:16