我正在尝试通过LyncOnlineConnector
PowerShell 模块管理 Skype Online for Business。我在连接远程交换时没有遇到任何问题。New-CsOnlineSession
但是,我现在正尝试使用而不是New-PSSession
(用于连接到 o365)来做完全相同的事情。
导入 lync 连接器工作正常。但是,当我尝试建立会话(详细)时:
VERBOSE: Determining domain to admin
VERBOSE: AdminDomain = 'x.com'
VERBOSE: Discovering PowerShell endpoint URI
VERBOSE: TargetUri = 'https://admin1a.online.lync.com/OcsPowershellOAuth'
VERBOSE: GET https://admin1a.online.lync.com/OcsPowershellOAuth with 0-byte payload
VERBOSE: AuthUri = 'https://login.windows.net/common/oauth2/authorize'
VERBOSE: Requesting authentication token
VERBOSE: Success
VERBOSE: Initializing remote session
New-PSSession : [admin1a.online.lync.com] Connecting to remote server admin1a.online.lync.com failed with the
following error message : The client cannot connect to the destination specified in the request. Verify that the
service on the destination is running and is accepting requests. Consult the logs and documentation for the
WS-Management service running on the destination, most commonly IIS or WinRM. If the destination is the WinRM service,
run the following command on the destination to analyze and configure the WinRM service: "winrm quickconfig". For more
information, see the about_Remote_Troubleshooting Help topic.
At C:\Program Files\Common Files\Skype for Business
Online\Modules\SkypeOnlineConnector\SkypeOnlineConnectorStartup.psm1:147 char:16
+ $session = New-PSSession -ConnectionUri $ConnectionUri.Uri -Credential $cred ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotin
gTransportException
+ FullyQualifiedErrorId : CannotConnect,PSSessionOpenFailed
令我困惑的是,我最初也遇到了同样的交换问题,但设置执行策略(远程强制)并运行winrm quickconfig
似乎解决了所有问题。
我尝试了所有能找到的与 winrm 相关的建议,但似乎都无法改变这个错误。我打开了端口,以不同的用户/管理员身份运行命令,经常重新创建会话,在此处运行命令以及网络上的许多其他我记不清的东西。什么都改变不了我的结果。
答案1
首先,这是让我无需任何其他设置即可连接的方法,除了安装 S4B Online Windows PowerShell Module v6.0.9276。
这是来自Technet 简介
$sfboSession = New-CsOnlineSession -Credential $credential
Import-PSSession $sfboSession
这使我能够无错误地连接:
从外观上看,它可能是网络数据包检查或 SSL 代理破坏了 SSL(就像在启用 SMTP 检查的 Cisco ASA 上一样,破坏了 Exchange TLS 连接)。
New-CsOnlineSession
可以使用-SessionOption
参数运行以提供代理设置信息。使用从系统配置继承的代理设置配置会话:
$proxysettings = New-PSSessionOption -ProxyAccessType WinHttpConfig
New-CsOnlineSession -Credential $credential -SessionOption $proxysettings
Import-PSSession $sfboSession
New-PSSessionOption
对于cmdlet,有更多的代理选项,包括身份验证机制和凭据。
答案2
我们的 Exchange 管理员尝试在虚拟机上操作,但遇到了同样的错误。但当他使用 Direct Access 远程连接到我们的网络时,他的工作站可以正常工作。这表明存在网络问题。
他发现防火墙阻止了它,我们用这个让它工作:
$proxysettings = New-PSSessionOption -ProxyAccessType AutoDetect
新 CsOnlineSession -SessionOption $proxysettings