启用 PowerShell 远程处理
例子
必须首先在要远程连接的服务器上启用PowerShell远程处理。
Enable-PSRemoting -Force
此命令执行以下操作:
运行Set-WSManQuickConfigcmdlet,它执行以下任务:
启动WinRM服务。
将WinRM服务的启动类型设置为自动。
创建一个侦听器以接受对任何IP地址的请求(如果尚不存在)。
为WS-Management通信启用防火墙例外。
注册Microsoft.PowerShell和Microsoft.PowerShell.Workflow会话配置(如果尚未注册)。
在64位计算机上注册Microsoft.PowerShell32会话配置(如果尚未注册)。
启用所有会话配置。
更改所有会话配置的安全描述符以允许远程访问。
重新启动WinRM服务以使前面的更改生效。
仅适用于非域环境
对于AD域中的服务器,PS远程身份验证通过Kerberos(“默认”)或NTLM(“协商”)完成。如果您想允许远程连接到非域服务器,您有两种选择。
要么通过HTTPS设置WSMan通信(需要生成证书),要么启用基本身份验证,通过base64编码的线路发送您的凭据(这与纯文本基本相同,因此请注意这一点)。
无论哪种情况,您都必须将远程系统添加到您的WSMan受信任主机列表中。
启用基本身份验证
Set-Item WSMan:\localhost\Service\AllowUnencrypted $true
然后,你要连接的计算机上的,你必须告诉它信任正在连接电脑来。
Set-Item WSMan:\localhost\Client\TrustedHosts '192.168.1.1,192.168.1.2'
Set-Item WSMan:\localhost\Client\TrustedHosts *.contoso.com
Set-Item WSMan:\localhost\Client\TrustedHosts *
重要提示:您必须告诉您的客户端信任以您想要连接的方式寻址的计算机(例如,如果您通过IP连接,则它必须信任IP而不是主机名)