非域网络,开启PowerShell远程管理,命令如下:

     非域网络,开启PowerShell远程管理,命令如下:

【原创】开启PowerShell远程管理,powershell远程管理

     非域网络,开启PowerShell远程管理,命令如下:

以下操作,PS命令窗口,必须都是管理员省份进行。

Step 1: 机器A和B,分别开启PowerShell远程管理服务
A = 192.168.3.32
PS >> Enable-PSRemoting
接下来依照提示,选项选Y,执行开启远程管理。

B = 192.168.3.37
PS >> Enable-PSRemoting
然后遵照提醒,选项选Y,执行开启远程管理。
 

Step 2: 机器A和B,分别信任须要远程管理的机器IP或称谓
 A=192.168.3.32
PS >> Set-Item WSMan:\localhost\Client\TrustedHosts -Value
192.168.3.37
下一场遵照提示,选项选Y,表示同意远程发送命令

B = 192.168.3.37
PS >> Set-Item WSMan:\localhost\Client\TrustedHosts -Value
192.168.3.37
下一场依照提醒,选项选Y,表示同意远程发送命令

Step 3: 在机器A下边,远程登录和执行命令到机器B
A = 192.168.3.32
PS >> Enter-PSSession -ComputerName 192.168.3.37

职能图如下:
澳门金沙国际 1澳门金沙国际 2
 

机器A上,远程执行命令机器B创造文件夹D:\Test

澳门金沙国际 3

 

查看机器B,上边有刚刚长途成立的文本夹D:\Test

澳门金沙国际 4

 

 

 

 

后续,笔者将试验演示,怎么样运用PowerShell +
Jenkins达成远程布置C#.NET的二种程序:

  1. 客户端更新包, 文件系统
    2.  WCF 服务
  2. Task 安插职务
  3. MVC 网站 

 

 

拉开PowerShell远程管理,远程管理之启用和执行命令。【自己原创,欢迎交换和分享技术,转发请附上如下内容:
若是您认为那篇文章对你有帮带,请记得帮自身点赞, 感谢!

作者:kevin【转自】

 

非域网络,开启PowerShell远程管理,命令如下:
以下操作,PS命令窗口,必须都是管理员省…

PowerShell
2.0的远程管理作用很有力,为了便利读者学习那里首先介绍学习条件的安装,便于读者在知道原理的同时有相对形象的体验。在本文中,将会独家介绍了怎么启用和剥夺powershell的远程管理,以及如何在工作组和混合域环境下布置电脑。以及哪些选取Invoke-Command
cmdlet用于在长距离主机上执行命令,创立持久线程,在三个指令间同一线程传递的变量和参数。用户还是能在实践较困难的一声令下时现在台职务的花样完结,并在实行完结后选取命令回调执行结果。

以下操作,PS命令窗口,必须都是管理人省份进行。

以下操作,PS命令窗口,必须都是管理人省份举办。

1 启用和剥夺远程管理

Step 1: 机器A和B,分别开启PowerShell远程管理服务
A = 192.168.3.32
PS >> Enable-PSRemoting
接下来依照提醒,选项选Y,执行开启远程管理。

Step 1: 机器A和B,分别开启PowerShell远程管理服务
A = 192.168.3.32
PS >> Enable-PSRemoting
然后根据提醒,选项选Y,执行开启远程管理。

PowerShell 2.0中能通过在PowerShell提醒符下执行下列的cmdlet启用远程管理

B = 192.168.3.37
PS >> Enable-PSRemoting
然后依据提醒,选项选Y,执行开启远程管理。
 

B = 192.168.3.37
PS >> Enable-PSRemoting
然后依据提醒,选项选Y,执行开启远程管理。
 

PS C:\> Enable-PSRemoting

Step 2: 机器A和B,分别信任须求远程管理的机械IP或称谓
 A=192.168.3.32
PS >> Set-Item WSMan:\localhost\Client\TrustedHosts -Value
192.168.3.37
然后根据提醒,选项选Y,表示同意远程发送命令

Step 2: 机器A和B,分别信任须要远程管理的机器IP或名称
 A=192.168.3.32
PS >> Set-Item WSMan:\localhost\Client\TrustedHosts -Value
192.168.3.37
下一场依照提示,选项选Y,表示同意远程发送命令

该cmdlet会向用户驾驭多少个难题如下图1所示

B = 192.168.3.37
PS >> Set-Item WSMan:\localhost\Client\TrustedHosts -Value
192.168.3.37
接下来根据提醒,选项选Y,表示同意远程发送命令

B = 192.168.3.37
PS >> Set-Item WSMan:\localhost\Client\TrustedHosts -Value
192.168.3.37
接下来遵照提醒,选项选Y,表示同意远程发送命令

澳门金沙国际 5

Step 3: 在机器A上边,远程登录和执行命令到机器B
A = 192.168.3.32
PS >> Enter-PSSession -ComputerName 192.168.3.37

Step 3: 在机器A上面,远程登录和执行命令到机器B
A = 192.168.3.32
PS >> Enter-PSSession -ComputerName 192.168.3.37

当执行该cmdlet时实施了以下操作,当中包蕴:

效益图如下:
澳门金沙国际 6澳门金沙国际 7
 

成效图如下:
澳门金沙国际 8澳门金沙国际 9
 

  1. 起始或再一次启航(借使已运维) WinLANDM 服务。

  2. 将 Win大切诺基M 服务类型设置为自动运维。

  3. 在该地电脑上创办三个侦听器以接受任意 IP 地址上的伸手。

  4. 对 WS-Management 流量启用防火墙例外(仅适用于
    http),假使要启用PS远程管理,此时互连网地方不能够被安装为public,因为Windows
    防火墙例外不可能在互联网地点是public时被启用。

机器A上,远程执行命令机器B创造文件夹D:\Test

机器A上,远程执行命令机器B创立文件夹D:\Test

5.启用全数注册的PS线程配置新闻。

澳门金沙国际 10

澳门金沙国际 11

默许情状下,Win讴歌ZDXM只启用http传输用于收纳远程请求。用户能够应用winrm命令或New-WSManIntance
cmdlet手动启用https传输。

 

 

【提示】

查阅机器B,下面有刚刚长途创造的文书夹D:\Test

翻看机器B,上边有刚刚长途成立的文件夹D:\Test

默许情形下,PowerShell远程管理选拔5985(http)和5986(https)端口。能够通过运用Set-Item
cmdlet修改wsman:\Localhost\listener\listener*\port对端口号实行安装,须要注意的是这么的操作将会转移系统中每一种Win福特ExplorerM监听器端口号。

澳门金沙国际 12

澳门金沙国际 13

当给Enable-PSRemoting
cmdlet扩充-force参数后执行将会在沉默状态下启用远程管理,PowerShell远程管理是不能够由此远距离启用的。

 

 

1.1 测试PowerShell远程管理

 

 

假如远程管理被启用了,能够运用上面包车型大巴cmdlet查看:

 

 

PS C:\ > Enter-PSSession –ComputerName localhost

 

 

用户将会看出如下图2所示的提醒符:

一连,笔者将尝试演示,怎么着使用PowerShell +
Jenkins完结长途计划C#.NET的八种程序:

接轨,作者将试验演示,怎么样使用PowerShell +
Jenkins完成远程铺排C#.NET的多种程序:

澳门金沙国际 14

  1. 客户端更新包, 文件系统
    2.  WCF 服务
  2. Task 安插职责
  3. MVC 网站 
  1. 客户端更新包, 文件系统
    2.  WCF 服务
  2. Task 布置任务
  3. MVC 网站 

【提示】

 

 

PowerShell线程(PS Session)是运作远程命令和本子的环境。PowerShell
2.0提供了五花八门的cmdlet管理这几个线程。能够采纳Get-Command –noun
PSSession命令查看全数与PSSession相关的cmdlet。

 

 

能够用New-PSSesssionOption改变PS线程暗中同意的显示。New-PSSession和Enter-PSSession有四个参数-sessionOption用于内定自定义线程选项,备选的选项有:

【自个儿原创,欢迎交换和享用技术,转发请附上如下内容:
要是你以为那篇作品对您有帮扶,请记得帮本身点赞, 谢谢!

【自个儿原创,欢迎沟通和享用技术,转发请附上如下内容:
要是你觉得那篇作品对你有帮扶,请记得帮我点赞, 多谢!

IdleTimeOut

作者:kevin【转自】

作者:kevin【转自】

概念远程主机的逾期时间,在未接受本地电脑包含心跳信号在内的其余通讯数据的状态下,PSSession将会被关门

 

 

OpenTimeOut

概念客户端主机等待线程建立连接的过期时间,一旦过期,建立连接的一声令下将会破产。

OperationTimeOut

概念能在PSSession中运维任何操作的最长日子,一旦过期,操作将会失利。

SkipCACheck

点名在经过HTTPS连接时,客户端不表达服务器证书是或不是由受信的CA签发

SkipCNCheck

钦点服务器的证书普通名(CN,Common
Name)不须求协作服务器的主机名,这些选项只是用来通过HTTPS协议传输的远程操作。

SkipRevocationCheck

不表达主机证书的重回状态。

1.2在工作组环境中国远洋运输总公司程管理

只通过运营Enable-PSRemoting
cmdlet是一直不能够连接到工作组中的总括机的。本质上来说是因为加盟工作组的总括机所拥有的安全级别是比加入域中的计算机更严刻。所以要是再插足工作组中的计算机,用户在创制远程线程在此以前必要启用相关的安装。

Windows XP

用户供给肯定将地面安全策略设置为网络签到经典鉴权。通过控制面板→管理工科具→本地安全策略,定位到“本地策略”→“安全选项”双击“网络访问:本地帐户的共享和安全情势”,并设置为“经典-本地用户以协调的身份验证”,效果如下图3所示:

澳门金沙国际 15

修改WSMan信任主机设置

在拥有加入工作组的处理器——包罗Windows XP,Windows
Vista或更高版本,用户须要选择如下命令扩充入保障有长途客户端的IP地址到受信主机清单中:

PS C:\ > Set-item wsman:localhost\client\trustedhosts –value *

使用*用来将有着主机添加为受信主机,假诺必要钦命特定的主机能够应用下边包车型地铁授命:

PS C:\ > Set-item wsman:localhost\client\trustedhosts –value
Copmuter1,Computer2

倘若急需添加钦点域名下的全数主机可进行上边包车型客车命令:

PS C:\ > Set-item wsman:localhost\client\trustedhosts –value
*.testdomain.com

假如急需添加远程主机的IP地址到受信主机的清单:

PS C:\ > Set-item wsman:localhost\client\trustedhosts –value
10.0.0.1

倘若做了地点的改观,用户能用Enable-PSRemoting
cmdlet在那几个工作组中的主机。

1.3在混合域环境中应用远程管理

暗中认可情状下,区别域下的用户就是是本土地管理理员组的积极分子照旧无法接二连三到别的域中的主机。那是因为从其余域的中距离连接只是运转在单身的用户权限之上。为了能使分裂域的主机能够接连到当地电脑,用户能够变更LocalAccountTokenFilterPolicy注册表键值(设置为1)来允许其余域的成员到地面电脑

PS C:\ > new-itemproperty -name LocalAccountTokenFilterPolicy -path
` HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
-propertyType DWord -value 1

1.4 在合营社条件下启用远程管理

为了能在铺子或域环境中的多台主机上启用远程管理,用户须要使用组策略,越多的音信方可从

1.5禁用远程管理

用户可以选拔Disable-PSRemoting在本地主机上禁止使用远程管理。Disable-PSRemoting将会使线程配置音信失效,那样的操作并不会移除全部Enable-PSRemoting创立的配备,包含WinLANDM的启用情状和为PS远程管理创建的监听器。

即便在本机上没有其余地劳工动或机件要求WinTiggoM服务,用户能够经超过实际践下列命令禁止使用WinCR-VM服务:

Set-Service winrm -StartupType Manual

Stop-Service winrm

为了移除暗中认可情状下WinPAJEROM在5985端口设置的监听器可以实施的下述命令:

Get-ChildItem WSMan:\localhost\Listener –Recurse | Foreach-Object {
$_.PSPath } | Where-Object { (Get-Item “$_\Port”).Value -eq 5985 } |
Remove-Item

2 执行长途命令

在远程管理的情事下,有三种方式在长距离主机上运维命令或脚本。包蕴Invoke-Command
cmdlet和交互式远程线程。一旦用户在本机启用远程管理,用户就能用Invoke-Command
cmdlet在本机或远程主机运维命令和本子。

澳门金沙国际,2.1 在地点或远程主机械运输营脚本块

用户能用上边包车型客车点子在本土和长途主机调用命令:

Invoke-Command -ComputerName WinServ-wfe -ScriptBlock {Get-Process}

脚本块此参数能用来钦赐在中距离主机械运输营的一星罗棋布命令。假诺要在本土执行命令,则ComputerName参数不是必须的。假使用户须求在多少个长途主机上进行同样的授命,用户能如下例所示通过逗号分隔的ComputerName参数或使用文本文件将主机清单传递给cmdlet:

Invoke-Command -ComputerName WinServ-wfe, SQL-Server2008 -ScriptBlock
{Get-Process}

Invoke-Command -ComputerName (get-content c:\scripts\servers.txt)
-ScriptBlock {Get-Process}

这种措施也被称之为散开式或一对多少距离程管理。用户能用一条命令在多台主机上执行同一的下令。

脚本块中兼有的一声令下和变量均会在中远距离总括机上运维。如果用户采纳类似于-ScriptBlock
{Get-Process –Name
$procName},PowerShell认为远程总括机线程中$procName变量已经定义过了。用户能经过应用Invoke-Command命令,将地点电脑上的变量传递到长途线程。

2.2 传递变量到长途线程

眼下的例子中,用户能够传递要物色的进程名作为变量。ArgumentList参数能帮忙用户传递到长途线程中:

$procName = “powershell”

Invoke-Command -ComputerName (get-content c:\scripts\servers.txt) `
-ScriptBlock {param ($Name) Get-Process -Name $Name} –ArgumentList
$procName

上面包车型大巴例子中得以显得怎么利用-ArgumentList参数字传送递本地变量到长途线程。

2.3 通过Invoke-Command使用持久线程

用户能够采取带-ComputerName参数的Invoke-Command建立一时半刻的线程执行远程命令。会在历次使用Invoke-Command
cmdlet时,都会再次树立线程。在只是进行简单、为数不多的吩咐时或然无所谓,可是倘诺要履行大气命令和本子时将会非常的耗时费劲。为了防止那种境况,就供给选择持久线程,用户能采取New-PSSession
cmdlet创制对长途主机的恒久连接。

$s = New-PSSession -ComputerName WinServ-wfe

那会儿,$s包括持久连接的线程细节,能够利用$s在中远距离主机上调用命令语法如下:

Invoke-Commad -Session $s -ScriptBlock {get-Process}

当在长途组合机上执行命令时,$s会包含全体创立和改动的变量。那样以$s作为线程的存在延续执行的通令能够访问具有在长途主机上创设和换代的变量,如下例所示:

$s = new-pssession -computername WinServ-wfe

Invoke-Command -Session $s -ScriptBlock {$fileCount = (Get-ChildItem
D:\ -Recurse).Count}

invoke-command -session $s -scriptblock {$fileCount}

用户能访问$fileCount变量,因为是采取了持久线程执行命令。假如只是使用-ComputerName调用命令那是不容许达成的。

2.4当作后台职分局转远程命令

后面包车型客车例子中赢得远程主机上全部D:\下的文书数量,要是含有的文本数量非常大的景况下将会很耗时,那样就要求等待远程命令实现实施。为了防止这点,用户能够应用-AsJob参数职责令作为长途主机的后台任务。命令格式如下所示:

Invoke-Command -ComputerName WinServ-wfe -ScriptBlock {(Get-ChildItem
D:\ -Recurse).Count} –asJob

履行后效果如下图4所示:

澳门金沙国际 16

当用户选拔带-AsJob参数的Invoke-Command
cmdlet时,远程主机上的后台职务将会被创设和平运动作,在后台职务被创制后,能够选择*-job
cmdlet管理职责目的。

比如说,用户能够应用Get-Job监察和控制职分的情景并且只要职分景况成为达成,就足以选用Receive-Job
cmdlet获取钦赐脚本块的输出。

Get-Job –id 3 | Receive-Job

用户也能应用Start-Job在中远距离主机上用脚本块创造后台职分。可是,通过那样情势确立的职分的出口结果只会在中距离主机上呈现。当用户供给从该后台义务获取输出输出时,就必要在Invoke-Command调用的脚本块中动用Receive-Job
cmdlet。

2.5 为远程管理钦命凭据

面前的篇章里,能够用在工作组中的总计机间接选举拔PowerShell远程管理。在前方的事例中只是一旦是运用管理员权限访问远程计算机,那样的章程能够在域中任何以管理员凭据登陆的电脑上在域环境中很好的办事,用户不必要显式的传递信物给Invoke-Command。但是,那样的不二法门是心有余而力不足在工作组环境下使用,需求传递信物给Invoke-Command,如下例所示:

$cred = Get-Credential

Invoke-Command -ComputerName WinServ-wfe -ScriptBlock { Get-Process}
-Credential $cred

在上边的事例中,Get-Credential会向用户索取访问远程主机的凭证,并使用该证据调用Invoke-Command
cmdlet。

3 总结

在本文中,首先介绍了什么启用powershell的远程管理,以及如何在工作组和混合域环境下布署电脑,必要注意的是剥夺远程管理不可能经过Enable-PSRemoting的逆操作来兑现。假如地点电脑不再必要远程管理效能,用户须求手动打消全数的装置,包罗甘休和剥夺WinHavalM服务,移除为可靠主机添加的监听器。

接下去介绍了何等利用Invoke-Command
cmdlet用于在远距离主机上执行命令,创立持久线程,在八个指令间同一线程传递的变量和参数。用户还是能够在进行较困难的一声令下时今后台任务的样式落实,并在履行达成后使用命令回调执行结果。

 

赛迪网地址:

 

作者: 付海军
出处:
版权:本文版权归我和天涯论坛共有
转发:欢迎转发,为了保存笔者的创作热情,请按供给【转发】,多谢
渴求:未经我同意,必须保留此段注明;必须在篇章中付出原文连接;否则必究法律权利
私家网站:

相关文章