我知道我的用户凭证,它们是User:Johannes
,Passwort:Pass12345
。
我可以使用 找到我所属的群组net
。
net user /domain Johannes
这给了我我所在的群组。
*BELIEVER51
*SOUTHHAMPTONBASKETBALL
*NEVERSAYDIE
我知道该BELIEVER51
组有权访问ARE42
。我可以使用批处理文件通过远程桌面协议
连接到。ARE42
cmdkey /generic:"ARE42" /user:"Johannes" /pass:"Pass12345"
start mstsc /v:ARE42
我只有一个 Windows 命令提示符。
如何发现所有可以连接的服务器?
答案1
如果您可以使用 powershell,您可以运行此脚本:
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
}
}
它将尝试使用提供的凭据在域中的每个服务器中创建会话。如果您可以连接到它,它将成功并将服务器名称添加到 $MyServers。然后您可以将变量导出到这样的列表中:
$MyServers | Out-File "c:\Temp\MyServers.txt"