对于经典门户 (ASM) 中的 Azure VM,我能够获得
- 所需的凭据
Get-AutomationPSCredential
and
- the
-ConnectionURI
with Connect-AzureVM.ps1 https://gallery.technet.microsoft.com/scriptcenter/Connect-to-an-Azure-85f0782c.
通过这两个参数,我能够成功执行New-PSSession
在 Azure 运行手册中。
Q我应该怎么做才能在 Azure-runbook 中打开到 Azure-VM (ARM) 的 PS-Session?
Update
Runbook 中的命令 (ARM)
$vmSession = New-PSSession -ConnectionUri 'https://xxx.yyy.cloudapp.azure.com:5985' -Credential $creds -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck)
错误信息
New-PSSession:[xxx.yyy.cloudapp.azure.com] 连接到
远程服务器 xxx.yyy.cloudapp.azure.com
失败并显示以下错误消息:WinRM 无法完成
手术。验证指定的计算机名称是否有效,
计算机可以通过网络访问,并且有防火墙
WinRM 服务的例外已启用并允许从此访问
电脑。默认情况下,WinRM 防火墙对公共例外
配置文件限制对同一本地计算机内的远程计算机的访问
子网。有关详细信息,请参阅 about_Remote_Troubleshooting
帮助主题。
根据您的错误,看来5985端口被某些防火墙阻止了。你可以使用telnet
测试连接性。
telnet xxx.yyy.cloudapp.azure.com 5985
如果失败,您还应该检查:
-
在 Windows 防火墙上打开端口 5985(入站规则)。
-
在 Azure NSG 上打开端口 5985(入站规则)。注意NSG可能与NIC或子网关联,最好全部检查。
-
在您的服务器 VM 上,执行 cmdlet。
winrm快速配置
确保可以访问端口 5985,然后在本地 PC 上进行测试,然后在 Azure Runbook 上进行测试。
我使用以下 cmdlet,它对我有用。
New-PSSession -ConnectionUri 'http://IP:5985' -Credential $creds -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck)
注意:如果您的服务器上没有配置证书,则无法使用https
你应该使用http
反而。
PS C:\Users\v-shshui> New-PSSession -ConnectionUri 'http://*.*.*.*:5985' -Credential $creds -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck)
Id Name ComputerName ComputerType State ConfigurationName Availability
-- ---- ------------ ------------ ----- ----------------- ------------
7 Session7 *.*.*.* RemoteMachine Opened Microsoft.PowerShell Available
另外,如果你想使用https
,您需要配置一个证书,如下所示link https://support.microsoft.com/en-us/help/2019527/how-to-configure-winrm-for-https.
Update
如果你想winrm
对于 Azure Runbook 中的 VM,您应该使用https
。这意味着你应该在 Azure NSG 和 Windows 防火墙上打开端口 5986(默认情况下)。此外,您还需要在 Azure VM 上添加新证书。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)