PowerShell的学习笔记(4)---- 如何在使用Enter-PSSession的时候解决TrustedHosts list的问题?

原创 2017年06月21日 12:34:11

我们有的时候,不能直接远程桌面登录另外一台Window机器,这个时候可以使用Enter-PSSession命令,通过PowerShell终端等到远程的Window机器,这个时候,就需要被访问的机器打开5985 或者5986 端口。 默认情况下,Window 2008 Server或者Window 2012 Server会自动默认开启WinRM的服务器,从而暴露5985或者5986端口; 但是如果所有的机器在一个域里面的话,http(5985端口)的方式就能直接访问,否则必须启用https(5986端口)的方式,在调用的过程中可能会遇到下面的错误:



解决方案就是,在执行Enter-PSSession命令的这端(注意不是目标机器一端)执行下面的命令:

Set-Item wsman:\localhost\Client\TrustedHosts -value 192.168.2.*

调用完之后,Enter-Session就能登录到远程的机器上去了。



下面在附上一些配置目标节点WinRM的命令:

1. Winrm

winrm
winrm help auth
winrm help uris How to construct resource URIs.
winrm help aliases Abbreviations for URIs.
winrm help config Configuring WinRM client and service settings.
winrm help certmapping Configuring client certificate access.
winrm help remoting How to access remote machines.
winrm help auth Providing credentials for remote access.
winrm help input Providing input to create, set, and invoke.
winrm help switches Other switches such as formatting, options, etc.
winrm help proxy Providing proxy information.

2. winrm get winrm/config/client

3. 如果上面的Auth schema的basic为false,我们可以通过下面的方式修改(cmd窗口中)

winrm set winrm/config/client/Auth @{Basic="true"}
winrm set winrm/config/service @{AllowUnencrypted="true"}
winrm set winrm/config/client @{AllowUnencrypted="true"}
winrm set winrm/config/client @{TrustedHosts="*"}

4.设置HTTPS的默认端口(在Powershell中为无效的命令,但是在CMD中可以生效)

winrm set winrm/config/client/DefaultPorts @{HTTPS="443"}
在PowerShell窗口中,需要加上单引号 ‘’
winrm set winrm/config/client/DefaultPorts @{HTTPS="443"}


5. 需要在cmd窗口,而不是PowerShell窗口

winrm set winrm/config/client @{TrustedHosts="*"}
在PowerShell窗口中,需要加上单引号
winrm set winrm/config/client ‘@{TrustedHosts=”*”}’
winrm set winrm/config/service ‘@{EnableCompatibilityHttpListener="true"}'

6.Set-WSManQuickConfig -SkipNetworkProfileCheck

When you connect your network, it gets set to Public, Private, or Domain. If the current profile is set to Public, Set-WSManQuickConfig will fail with that message. You can either change it (if the system will let you) or skip the profile check.

7. 查看winrm的配置

PS C:\DSC> winrm get winrm/config
Config
MaxEnvelopeSizekb = 500
MaxTimeoutms = 60000
MaxBatchItems = 32000
MaxProviderRequests = 4294967295
Client
NetworkDelayms = 5000
URLPrefix = wsman
AllowUnencrypted = true
Auth
Basic = true
Digest = true
Kerberos = true
Negotiate = true
Certificate = false
CredSSP = false
DefaultPorts
HTTP = 5985
HTTPS = 5986
TrustedHosts = *
Service
RootSDDL = O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;IU)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
MaxConcurrentOperations = 4294967295
MaxConcurrentOperationsPerUser = 1500
EnumerationTimeoutms = 240000
MaxConnections = 300
MaxPacketRetrievalTimeSeconds = 120
AllowUnencrypted = true
Auth
Basic = true
Kerberos = true
Negotiate = true
Certificate = false
CredSSP = false
CbtHardeningLevel = Relaxed
DefaultPorts
HTTP = 5985
HTTPS = 5986
IPv4Filter = *
IPv6Filter = *
EnableCompatibilityHttpListener = true
EnableCompatibilityHttpsListener = false
CertificateThumbprint
AllowRemoteAccess = true
Winrs
AllowRemoteShellAccess = true
IdleTimeout = 7200000
MaxConcurrentUsers = 2147483647
MaxShellRunTime = 2147483647
MaxProcessesPerShell = 2147483647
MaxMemoryPerShellMB = 2147483647
MaxShellsPerUser = 2147483647




版权声明:本文为博主原创文章,未经博主允许不得转载。

powershell 远程执行命令失败

Connecting to remote server failed with the following error message : The WinRM client cannot proces...
  • lijiecong
  • lijiecong
  • 2013年07月31日 09:59
  • 6853

PowerShell 2.0远程管理之交互式远程线程

本文将会介绍PowerShell 2.0的交互式远程管理以及如何使用Enter-PSSession、Exit-PSSession以及Get-PSSession操作线程的相关属性,以及在交互式远程管理中...
  • fuhj02
  • fuhj02
  • 2010年12月10日 10:18
  • 686

关于Powershell执行时的问题

问题1: 【问题描述】 使用Invoke-Command命令登录远程主机执行命令时,提示如下错误: [192.168.1.135] 连接到远程服务器失败,错误消息如下: WinRM 客户端无法处理该请...
  • foreverfriends
  • foreverfriends
  • 2017年03月16日 16:03
  • 1120

PowerShell的学习笔记(4)---- 如何在使用Enter-PSSession的时候解决TrustedHosts list的问题?

我们有的时候,不能直接远程桌面登录另外一台Window机器,这个时候可以使用Enter-PSSession命令,通过PowerShell终端等到远程的Window机器,这个时候,就需要被访问的机器打开...
  • chancein007
  • chancein007
  • 2017年06月21日 12:34
  • 1244

PowerShell Web Access 介绍

PowerShell Web Access 介绍 大家好,今天由瑞克带领大家讨论怎样使用Windows Server 2012上面的新功能:PowerShell Web Access (PSWA...
  • jsd2honey
  • jsd2honey
  • 2017年08月28日 17:41
  • 248

PowerShell 如何 远程连接

PowerShell是微软开发的一个Shell工具,你可以向Linux Unix一样采用命令的方式去控制windows ,Win7之后的版本都带有这个功能。 不过我刚开始使用PowerShell...
  • sa2937517498
  • sa2937517498
  • 2014年05月15日 15:53
  • 447

powershell中使用vim

要先安装gvim 编辑C:\Program Files (x86)\Vim\_vimrc,添加 set encoding=utf-8 set termencoding=utf-8 set fi...
  • zgrbsbf
  • zgrbsbf
  • 2016年09月27日 18:13
  • 686

PowerShell,远程操作,读写复制备份文件

我一直在寻找,使用脚本远程操作的方法。 然则,一直没有找到。 前阵子,51CTO的beanxyz兄说PowerShell可以,遂学之。 于是,现在的我,可以做到远程启动服务进程、操作文件,之类的事情,...
  • tiantuanzi
  • tiantuanzi
  • 2015年11月24日 14:35
  • 1354

PowerShell,远程操作,读写复制备份文件

我一直在寻找,使用脚本远程操作的方法。 然则,一直没有找到。 前阵子,51CTO的beanxyz兄说PowerShell可以,遂学之。 于是,现在的我,可以做到远程启动服务进程、操作文件,之类的事情,...
  • tiantuanzi
  • tiantuanzi
  • 2015年11月24日 14:35
  • 1354

PowerShell使用Vim的方法

PowerShell使用Vim的方法 最近一直在Windows平台下测试Git代码管理的功能,因为自己代码写的十分乱,想要快速掌握Git的用法来对代码进行管理。我发现在Powershell下却不能使...
  • zhengqijun_
  • zhengqijun_
  • 2017年03月16日 16:18
  • 1792
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PowerShell的学习笔记(4)---- 如何在使用Enter-PSSession的时候解决TrustedHosts list的问题?
举报原因:
原因补充:

(最多只允许输入30个字)