PowerShell远程工作组计算机
我想从我的域远程PowerShell加入PC到我们的DMZ服务器,但我不知道如何让它工作。PowerShell远程工作组计算机
DMZ服务器在已启用的默认端口5985上为HTTP配置了一个侦听器。机器中的两个NIC都标记为公共网络,因此我更改了公用配置文件的Windows远程管理(HTTP-In)防火墙规则,以接受来自我的IP以及已配置的本地子网的连接。
在我的客户端计算机(Windows 10)上,我将服务器的主机名添加到WSMan:\ localhost \ Client \ TrustedHosts,并向注册表添加LocalAccountTokenFilterPolicy(值:1,类型:DWORD)。
我使用服务器(服务器名\用户名)的本地凭据创建凭证对象,然后尝试$Sess = New-PSSession -ComputerName DMZCOMPUTER -Port 5985 -Credential $Cred
连接始终尝试使用Kerberos连接到显然不工作的计算机。
如果我尝试$Sess = New-PSSession -ComputerName DMZCOMPUTER -Port 5985 -Credential $Cred -Authentication Basic
我收到一个错误,表示当前禁用了未加密的流量。其他认证方案产生不同的错误消息,但我从来没有能够远程。
我是否在某处丢失配置?需要什么设置(服务器&客户端)使用远程PowerShell连接到加入域的客户端的工作组服务器。
我终于明白了这一点,有几个问题与我在做什么。首先在https://blogs.msdn.microsoft.com/wmi/2009/07/24/powershell-remoting-between-two-workgroup-machines/处的链接有一些不正确的信息。它声明LocalAccountTokenFilterPolicy注册表项应该在客户机上,这是不正确的,它应该在服务器机器上。
另一个修复程序就是我正在使用TrustedHosts值中的服务器的FQDN,然后在尝试创建会话时仅使用主机名。
如果任何人试图得到这个工作要遵循的步骤是:在服务器上
- 运行
Enable-PSRemoting
- 这将启动WinRM服务和它的启动设置为自动
- 它会创建一个HTTP监听器
- 您可以通过运行
winrm enumerate winrm/config/listener
- 您可以通过运行
- 这将使Windows远程管理防火墙规则
- 它将创建和配置
LocalAccountTokenFilterPolicy
注册表项 - 将重置四次会议权限的主机
- 您可以验证这一点运行
Get-PSSessionConfiguration
- 您可以验证这一点运行
- 启动WinRM的小号在客户机上ervice
- 运行
Set-Item WSMan:\localhost\Client\TrustedHosts -Value <hostname or FQDN or server>
- 您可以添加到
-Concatenate
的Set-Item
结束时,如果你想要一台服务器添加到列表中
- 您可以添加到
- 运行
$Cred = Get-Credential
我只是进入了一个用户名和kevmar建议的密码(不是服务器名\用户名) - 运行命令如
$S = New-PSSession -ComputerName <same name exactly that you put in the TrustedHosts> -Credential $Cred
- 如果一切正常,那么命令应该只返回
- 如果您收到提到的Kerberos错误检查,你在你的
ComputerName
参数使用相同的名称和TrustedHosts - 如果您收到拒绝访问错误检查
LocalAccountTokenFilterPolicy
是服务器上配置
哇,我永远不会没有这个职位没有域和公共网络配置文件工作。我一直在SERVER上设置TrustedHosts。您仍然必须在公共网络中将客户端IP添加到服务器防火墙中,如下所示: “Set-NetFirewallRule -Name WINRM-HTTP-In-TCP -RemoteAddress
公共网络的“enable-psremoting -force -skipnetworkprofilecheck”。 – js2010
在win7中,您可以安装powershell 4(wmf 4),然后运行“enable-psremoting -force -skipnetworkprofilecheck”,即使启用uac的系统用户以及公共网络配置文件也是如此。尽管如此,仍然没有PowerShell防火墙命令。 https://www.microsoft.com/en-us/download/details.aspx?id=40855(Windows6.1-KB2819745-x64-MultiPkg.msu)Microsoft建议不要使用PS 2.0启用它。 https://msdn.microsoft.com/en-us/powershell/reference/5.1/microsoft.powershell.core/enable-psremoting?f=255&MSPPError=-2147217396 – js2010
首先尝试使用您的用户名和密码创建凭证对象。跳过尝试指定凭证中的域或服务器名称。
然后尝试连接IP地址而不是计算机名称。您仍然需要将其添加到可信主机值。
最后使用的是Test-WSMan
来解决您的问题。提供的错误消息应该给你一个关于问题是什么的强烈暗示。
感谢您的帮助。这使我朝着正确的方向发展,Test-WSMan有助于解决问题。 – Martin
您应该阅读本文:https://blogs.msdn.microsoft.com/wmi/2009/07/24/powershell-remoting-between-two-workgroup-machines/和本书:https: //devopscollective.gitbooks.io/secrets-of-powershell-remoting/content/index.html – 4c74356b41
@ 4c74356b41 - 我实际上已经看过那个链接,它让我走得比别人更远,但是我已经排序了他出来和链接实际上有不正确的信息,现在我已经知道了 – Martin