我正尝试通过使用PowerShell的wsman连接连接到Exchange服务器。 有问题的客户端服务器位于工作组中,而Exchange服务器位于其自己的域中。
我使用以下命令尝试连接到服务器:
connect-wsman -connectionuri http://servername/PowerShell -credential domain\administrator
然后我得到完整的错误:
连接到远程服务器失败,并显示以下错误消息:WinRM客户端无法处理请求。 它无法确定来自目标计算机的HTTP响应的内容types。 内容types不存在或无效。 有关更多信息,请参阅about_Remote_Troubleshooting帮助主题。
以前,当有问题的客户端服务器与Exchange服务器位于同一个域中时,这起作用。 防火墙closures,所有的服务器都是WinRM的TrustedHosts。
有趣的是,当我使用:
connect-wsman -computername servername -credential domain\administrator
我没有得到任何错误。 但是,我需要能够使用URI而不是计算机名称。
有任何想法吗?
我相信你连接到错误的端口。 可能有一些其他服务(不是wsman)在端口80上运行,但是在你的URI中,你没有指定端口,所以它假设端口80
http://servername
除非您真的在Exchange服务器上使用端口80作为wsman,否则应指定端口(使用端口5985的示例):
http://servername:5985
要找出您需要的端口,您应该login到Exchange服务器,启动powershell并运行此:
Get-WSManInstance -ResourceURI winrm/config/listener -Enumerate
有一个testing函数可以从客户端的PowerShell中使用(请参阅http://technet.microsoft.com/en-us/library/hh849873.aspx ):
test-wsman http://servername:port
我能够通过将我的客户端放入与目标相同的域来解决此问题。 由于一些外部的问题,这是不可能的,但是这些问题已经解决了。