无法在服务器上调用命令(Powershell)

时间:2017-07-27 15:25:17

标签: powershell remote-server winrm

我遇到了问题,我无法在远程执行powershell命令。

Invoke-Command -ComputerName MYCOMPUTER -Credential MYDOMAIN\MYUSER -ScriptBlock {Get-Culture}

这是我的错误日志:

  

Winrs错误:WinRM无法处理请求。以下错误   使用Kerberos身份验证时发生:网络路径不是   找到。

     

可能的原因是:

     

- 指定的用户名或密码无效。     -Kerberos在没有身份验证方法且没有用户名时使用   指定。

     

-Kerberos接受域用户名,但不接受本地用户名。      - 远程计算机名称和服务主体名称(SPN)   端口不存在。

     

- 客户端和远程计算机位于不同的域中   这两个域之间没有信任。    检查上述问题后,请尝试以下操作:

     

- 检查事件查看器以查找与身份验证相关的事件。      - 更改身份验证方法;添加目标计算机   WinRM TrustedHosts配置设置或使用HTTPS传输。

我已经获得了服务器的完全权限,我在管理员中执行了“Enable-PSRemoting -Force”,WinRm快速配置也“,我可以ping服务器并连接它。

这很奇怪,因为我可以在另一台具有相同版本Windows(Windows Server 2008 R2)和相同版本的PowerShell(2.0)的服务器上执行此操作。 你能帮帮我吗?

由于

1 个答案:

答案 0 :(得分:0)

您可以验证可信主机的可用性:

  1. 右键单击Windows PowerShell快捷方式并选择“以管理员身份运行”,以管理员身份启动Windows PowerShell。

  2. 在PowerShell提示符下,您可以使用以下命令验证WinRM服务是否正在运行:

    get-service winrm

  3. 输出中Status属性的值应为“Running”。

    1. 要配置Windows PowerShell以进行远程处理,请键入以下命令:

      启用-PSRemoting -force

    2. 使用以下命令在可信主机下添加远程系统:

      winrm s winrm/config/client '@{TrustedHosts="RemoteComputer"}'
      

      然后您可以使用以下命令检查相同内容:

      winrm quickconfig
      

      参考链接:Enabling Remoting in Powershell