代码之家  ›  专栏  ›  技术社区  ›  CrazyCoder

我们可以远程连接到不同的虚拟网络Azure VM吗

  •  -1
  • CrazyCoder  · 技术社区  · 6 年前

    VM1 VM2 . 我已登录 VM1型 通过RDP。现在我的要求是连接到 VM2型 VM1型 通过powershell远程运行一些命令。

    当我运行以下命令时:

    $UserName = "<IP>\username"
    $Password = ConvertTo-SecureString "password@123" -AsPlainText -Force
    $psCred = New-Object System.Management.Automation.PSCredential($UserName, $Password)
    $s = New-PSSession -ComputerName <IP> -Credential $psCred
    

    新建PSSession:[]连接到远程服务器失败,错误消息如下:WinRM无法完成操作。请验证指定的计算机名是否有效,是否可以通过网络访问该计算机,以及是否启用了WinRM服务的防火墙例外并允许从此计算机进行访问。默认情况下,公共配置文件的WinRM防火墙例外限制对同一本地子网中的远程计算机的访问。有关详细信息,请参阅关于远程故障排除帮助主题。

    我在网上找到的所有解决办法都试过了,但没有一个能解决我的问题。

    两个虚拟机的虚拟网络/子网不同,它们都没有公共IP和DNS名称(这是业务要求,不能更改)。所以我用私有IP来login.Location 两种虚拟机的性能也不同。

    1 回复  |  直到 6 年前
        1
  •  2
  •   Nancy Xiong    6 年前

    首先,您应该通过虚拟网络面板上的网络对等来确认两个不同的虚拟网络连接是否正常工作。这是 Demo .

    然后,需要打开与该子网关联的NSG入站规则中的端口5985。另外,暂时关闭本地防火墙以运行以下脚本。或者,您可以使用以下命令添加传入规则以允许端口5985上的通信:

    New-NetFirewallRule -Name "winrm_http" -DisplayName "winrm_http" -Enabled True -Profile Any -Action Allow -Direction Inbound -LocalPort 5985 -Protocol TCP
    

    运行 winrm quickconfig Enable-PSRemoting -Force 要启用,请将计算机配置为WinRM远程管理。您还可以通过运行 netstat -a .

    enter image description here

    在客户机上

    命令提示符中的命令来配置WinRM服务。将远程计算机的IP地址添加到远程PS客户端中的受信任主机。 Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value 172.18.20.4

    然后以屏幕截图的形式运行命令。

    enter image description here

    Enable PowerShell Remoting