【问题标题】:How can one execute Powershell commands/ scripts on a remote Azure VM?如何在远程 Azure VM 上执行 Powershell 命令/脚本?
【发布时间】:2019-05-09 17:36:11
【问题描述】:

假设我的 Azure 订阅中有两台虚拟机。从机器 Foo,我希望能够以管理员帐户在 Bar 上运行 Powershell 命令和脚本。

我将在 Foo 上使用持续构建服务器,当触发它时,它将在双方都可以访问的共享目录中创建一个名为 go.ps1 的(签名)脚本FooBar。创建该脚本后,我希望我的 CBS 让 Bar 将该文件复制到 C:\scripts\go.ps1 并执行它,就好像我是坐在 Bar 的管理员一样。我过去使用 psexec 在物理机上做过类似的事情。我认为 Azure VM 也有类似的东西。

【问题讨论】:

  • 你也可以使用invoke-command来执行远程脚本或.ps1文件。

标签: azure azure-powershell


【解决方案1】:

如果虚拟机位于使用 Azure 提供的 DNS 的同一 VNet 上,则 psexec 应该可以工作。

【讨论】:

    【解决方案2】:

    通常,您可以使用PsExec 在物理机上执行类似的操作。关于 Azure VM,您可以确保两个 VM 之间的网络连接正常。如果他们在不同的VNet,你可以peer the VNets with each other.如果他们在同一个VNet,默认有NSG入站规则允许任何端口从虚拟网络到另一个虚拟网络,所以你只需要打开PSEXEC端口445在 VM 内部的防火墙中,例如 Windows 防火墙。

    这对我有用。使用私有配置文件在 windows 防火墙的入站规则中启用端口 445。我可以在 VM 10.0.0.4 上运行 PsExec 来打开 VM 10.0.1.6 中的 CMD。

    另外,您可以通过多种方法联系run scripts on the Azure VM。如果您在回复中有任何不清楚的地方,请随时告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-24
      • 1970-01-01
      • 2021-05-10
      • 1970-01-01
      • 2022-06-10
      • 2020-06-12
      • 2012-05-30
      相关资源
      最近更新 更多