3

我有许多虚拟机,它们使用 PowerShell 脚本应用了快照。有时,虚拟机会失去与域的“信任关系”。这会破坏脚本,因为我不能再使用 PowerShell 远程访问机器并对其进行配置。

如何远程重置这些虚拟机的信任关系?也许有可能重新加入不涉及远程处理的域?

手动重新加入域的任何替代解决方案都需要登录到计算机并在本地执行此操作。我还没有找到任何可以做到这一点的东西。

到目前为止,我试图将一个脚本放在一起,以本地管理员的身份简单地远程到框中:

$password = ConvertTo-SecureString "password" -AsPlainText -Force
$cred= New-Object System.Management.Automation.PSCredential ("Administrator", $password)
$sesh = new-pssession -computername "theMachine" -credential $cred

此时,我希望使用 PowerShell 重置密码或类似的东西来重置域信任关系。但是,这会导致最后一行出现错误:Access is Denied.

我认为您不能将本地管理员帐户用于 PowerShell 远程处理。有没有其他方法可以远程让失去域信任关系的虚拟机重新加入域?

4

1 回答 1

1

有趣的一个问题。PSExec将和工作的组合netdom?我没有信任关系破裂的虚拟机,所以我无法测试这个想法。

无论如何,PSExec有参数-u-p用户名和密码。确保您知道本地管理员帐户。PSExec即使信任关系破裂,将其凭据传递给也应该提供远程外壳。Netdom.exe或者可以使用 Powershell 脚本将计算机重新加入域。

另一种选择是更改计算机帐户的策略。将“计算机配置\Windows 设置\安全设置\本地策略\安全选项\域成员:计算机帐户密码最长使用期限”设置为 0 的 GPO 会将计算机帐户密码设置为永不过期。不过,这可能会引发一些安全问题。

编辑

使用 psexec 打开一个 shell 会话。像这样,

psexec -u computer\administrator -p password \\computer cmd

获得 shell 后,尝试使用 netdom 命令进行试验。从域中删除计算机并将其添加到域中。Netdom join和 netdom remove支持凭证传递,因此请提供有效的域帐户凭证。在您知道确切的命令语法后,将值保存到脚本文件并使用 psexec 启动它,如下所示,

psexec -u computer\administrator -p password \\computer c:\myScript.cmd

于 2013-09-23T18:35:07.373 回答