我正在从 Windows 8 计算机上的 PowerShell 控制台运行以下命令,尝试配置 Server 2012 R2 RDS 连接代理:
Import-Module RemoteDesktop
Set-RDSessionCollectionConfiguration -CollectionName "Example" -CustomRdpProperty "gatewayhostname:s:rdp.example.com" -ConnectionBroker "ep-ts01.ad.example.com"
然而,即使我指定了要使用哪个连接代理,它总是尝试连接到localhost
:
New-PSSession:[localhost] 连接到远程服务器 localhost 失败,并显示以下错误消息:客户端无法连接到请求中指定的目标。验证目标上的服务是否正在运行并接受请求。查阅目标上运行的 WS-Management 服务的日志和文档,最常见的是 IIS 或 WinRM。如果目标是 WinRM 服务,请在目标上运行以下命令来分析和配置 WinRM 服务:“winrm quickconfig”。有关更多信息,请参阅 about_Remote_Troubleshooting 帮助主题。
但是,Get-RDSessionCollection -ConnectionBroker ep-ts01.ad.example.com
运行正常并返回集合。
Enter-PSSession ep-ts01.ad.example.com
如果我这样做并从那里开始,故事还是同样的故事。然而如果我运行命令来自服务器本身(即不是远程)它运行良好。
我怎样才能解决这个问题?
答案1
马克,我很高兴能帮你找到这个问题。我完全明白你的想法,但你问错了问题。问题应该是“为什么我不能在我的机器上建立‘servermanagerworkflows’会话?”
如果您查看$enf:systemroot\system32\WindowsPowerShell\v1.0\Modules\RemoteDesktop
并打开SessionCollectionProperties.psm1
模块并跳转到第 383 行,您会发现一个条目,其中 Microsoft 有意尝试使用配置创建本地会话Microsoft.Windows.ServerManagerWorkflows
。实例化会话后,奇迹会发生在以下 Try/Catch/Finally 块中。
如果您$session = New-PSSession -ConfigurationName microsoft.windows.servermanagerworkflow
单独运行 PS 提示,我敢打赌您会得到相同的错误。为了加强这一点,请运行Get-PSSessionConfiguration | Select Name
,我敢打赌您不会microsoft.windows.servermanagerworkflows
在列表中看到。因此,下一步是获取您需要的会话配置。
运行Register-PSSessionConfiguration -Name Microsoft.Windows.ServerManagerWorkflows
cmdlet 并同意提示。如果成功,请Get-PSSessionConfiguration
再次运行并查看工作流是否列出。如果列出,则您应该一切顺利,或者至少会生成一组新的错误。
干杯!