【发布时间】:2021-06-30 18:06:36
【问题描述】:
我已经为 2 台机器配置了 HTTPS WinRM 监听器。证书是自签名的。单独地,基于 SSL 的 WinRM 在具有Enter-PSSession 和Invoke-Command 的两台机器上都可以正常工作。但是当我进行嵌套会话时,第二跳会抛出错误 "Access is denied." 设计是 1 个公共 IP 和 1 个私有地址:
互联网 > 88.88.88.88 > 192.168.1.10
$user = "administrator"
$pass = "P@55w0rd!"
$secure = ConvertTo-SecureString -AsPlainText $pass -Force
$creds = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user, $secure
$Options = New-PsSessionOption -SkipCACheck -SkipCNCheck
Invoke-Command -ComputerName "88.88.88.88" -Credential $creds -SessionOption $Options -UseSSL -ScriptBlock {
$env:COMPUTERNAME
$user = "admin2"
$pass = "P@SSW)RD!"
$secure = ConvertTo-SecureString -AsPlainText $pass -Force
$cred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $user, $secure
$Options = New-PsSessionOption -SkipCACheck -SkipCNCheck
Invoke-Command -ScriptBlock { $env:COMPUTERNAME } -ComputerName "192.168.1.10" -Credential $cred -UseSSL -SessionOption $Options
}
输出:
hop1name
错误信息:
[192.168.1.10] 连接到远程服务器 192.168.1.10 失败,并显示以下错误消息:访问被拒绝。有关详细信息,请参阅 about_Remote_Troubleshooting 帮助主题。
+ CategoryInfo : OpenError: (192.168.1.10:String) [], PSRemotingTransportException
+ FullyQualifiedErrorId : AccessDenied,PSSessionStateBroken
+ PSComputerName : 88.88.88.88
【问题讨论】:
-
查找“Powershell double hop”这方面的文章有数百篇。
-
$user = '192.168.1.10\admin2'? -
它有效,非常感谢,非常感谢。我刚刚发现它也适用于
$user = ".\admin2"。
标签: powershell powershell-remoting