中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

windows服務(wù)器遠(yuǎn)程執(zhí)行命令(PowerShell+WinRM)

建站服務(wù)器

Windows 遠(yuǎn)程管理 (WinRM) 是 WS-Management 協(xié)議的 Microsoft 實(shí)現(xiàn)。該協(xié)議是基于簡(jiǎn)單對(duì)象訪問協(xié)議 (SOAP) 的、防火墻友好的標(biāo)準(zhǔn)協(xié)議,使來自不同供應(yīng)商的硬件和操作系統(tǒng)能夠互操作。WS-Management 協(xié)議由硬件和軟件制造商群體開發(fā),作為一種公共標(biāo)準(zhǔn),可用于與實(shí)現(xiàn)該協(xié)議的任何計(jì)算機(jī)設(shè)備遠(yuǎn)程交換管理數(shù)據(jù)。

10多年的臨縣網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。網(wǎng)絡(luò)營(yíng)銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整臨縣建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“臨縣網(wǎng)站設(shè)計(jì)”,“臨縣網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

使用PowerShell對(duì)服務(wù)器遠(yuǎn)程管理,要在遠(yuǎn)程服務(wù)器上啟用WinRM。

一、知識(shí)儲(chǔ)備:

1、WinRM相關(guān)操作

開啟WinRM服務(wù):

Enable-PSRemoting –Force

阻止本地計(jì)算機(jī)接收遠(yuǎn)程命令(不會(huì)停止WinRM服務(wù)):

Disable-psremoting –Force

查看WinRM服務(wù)監(jiān)聽信息:

winrm enumerate winrm/config/Listener

WinRM2.0默認(rèn)端口5985(HTTP端口)或5986(HTTPS端口)。

刪除WinRM HTTP偵聽:

winrm delete winrm/config/listener?Address=*+Transport=HTTP

重新建立HTTP偵聽:

winrm create winrm/config/listener?Address=*+Transport=HTTP

WinRM服務(wù)更改監(jiān)聽端口:

set-item -force wsman:\\localhost\\listener\\listener*\\port 5985

查看WinRM的配置:

winrm get winrm/config

查看端口監(jiān)聽狀態(tài):

netstat -nao | findstr 5985

2、PowerShell腳本保存憑據(jù)方法

使用Get-Credential命令來交互式輸入憑據(jù)(用戶名+密碼),可以先將憑據(jù)保存到一個(gè)變量中,如:

$cred = get-credential

$cred的對(duì)象類型名稱為:System.Management.Automation.PSCredential,其中的Password和UserName都是其屬性,所以可以新建一個(gè)該類型的對(duì)象。在此處需要注意的是Password類型為SecureString,UserName類型為String,所以需要將明文的Password轉(zhuǎn)換為安全字符串,可以使用ConvertTo-SecureString命令。

非交互式保存憑據(jù)代碼示例:

$account=administrator
$password=\'123456\'
$secpwd=convertto-securestring$password-asplaintext-force
$cred=new-objectSystem.Management.Automation.PSCredential-argumentlist$account,$secpwd

3、Invoke-Command

Invoke-Command在本地和遠(yuǎn)程計(jì)算機(jī)上運(yùn)行命令,并從命令返回所有輸出,包括錯(cuò)誤。使用一個(gè)Invoke-Command命令,可以在多臺(tái)計(jì)算機(jī)上運(yùn)行命令。部分參數(shù)介紹:

-Port <int>

指定遠(yuǎn)程計(jì)算機(jī)上用于此命令的網(wǎng)絡(luò)端口。用于WinRM默認(rèn)監(jiān)聽端口被更改的情況下,指定新的端口。

-ComputerName <string[]>

指定運(yùn)行此命令的計(jì)算機(jī)。默認(rèn)值為本地計(jì)算機(jī)。

使用 ComputerName 參數(shù)時(shí),Windows PowerShell 會(huì)創(chuàng)建一個(gè)臨時(shí)連接,此連接僅用于運(yùn)行指定的命令,之后將關(guān)閉。如果需要持續(xù)性連接,請(qǐng)使用 Session 參數(shù)。

在一個(gè)逗號(hào)分隔列表中鍵入一臺(tái)或多臺(tái)計(jì)算機(jī)的 NETBIOS 名稱、IP 地址或完全限定的域名。要指定本地計(jì)算機(jī),請(qǐng)鍵入計(jì)算機(jī)名稱、“l(fā)ocalhost”或句點(diǎn) (.)。

若要在 ComputerName 參數(shù)的值中使用 IP 地址,命令必須包括 Credential 參數(shù)。另外,必須為計(jì)算機(jī)配置 HTTPS 傳輸,或者必須在本地計(jì)算機(jī)上的 WinRM TrustedHosts 列表中包含遠(yuǎn)程計(jì)算機(jī)的 IP 地址。

-Session <PSSession[]>

在指定的 Windows PowerShell 會(huì)話 (PSSession) 中運(yùn)行此命令。

通過創(chuàng)建 PSSession,Windows PowerShell 可以建立與遠(yuǎn)程計(jì)算機(jī)的持續(xù)性連接。

-Credential <PSCredential>

指定有權(quán)執(zhí)行此操作的用戶帳戶。默認(rèn)值為當(dāng)前用戶。

-command/-ScriptBlock <scriptblock>

指定要運(yùn)行的命令。用大括號(hào) ({ }) 括起命令以形成腳本塊。

-FilePath <string>

在一臺(tái)或多臺(tái)遠(yuǎn)程計(jì)算機(jī)上運(yùn)行指定的本地腳本。

-AsJob

在遠(yuǎn)程計(jì)算機(jī)上將命令作為后臺(tái)作業(yè)運(yùn)行。使用此參數(shù)可運(yùn)行需要較長(zhǎng)時(shí)間才能完成的命令。

使用 AsJob 時(shí),此命令返回代表作業(yè)的對(duì)象,然后顯示命令提示符。要管理作業(yè),請(qǐng)使用 Job cmdlet。要獲取作業(yè)結(jié)果,請(qǐng)使用 Receive-Job。

-ThrottleLimit <int>

指定為運(yùn)行此命令可建立的并發(fā)連接的數(shù)目。如果省略此參數(shù)或輸入 0 值,則使用默認(rèn)值 32。

4、PSSession

PSSession即Windows PowerShell會(huì)話。當(dāng)你需要與遠(yuǎn)程計(jì)算機(jī)的持續(xù)連接時(shí),則使用PSSession。PSSession相關(guān)命令:

Enter-PSSession

啟動(dòng)與遠(yuǎn)程計(jì)算機(jī)間的交互式會(huì)話。

New-PSSession

創(chuàng)建PSSession,并返回一個(gè)表示PSSession的對(duì)象。你可以將對(duì)象保存在變量中。

Get-PSSession

獲取當(dāng)前會(huì)話中創(chuàng)建的PSSession。Get-PSSession返回與New-PSSession返回的對(duì)象相同類型的對(duì)象。

Remove-PSSession

刪除 PSSession 并釋放其正在使用的資源。

5、將計(jì)算機(jī)名稱添加到TrustedHosts列表

若要將所有計(jì)算機(jī)添加到受信任主機(jī)列表,請(qǐng)使用以下命令 :

set-item wsman:localhost\\client\\trustedhosts -Force -value *

還可以使用通配符 (*) 將特定域中的所有計(jì)算機(jī)添加到受信任主機(jī)列表。

例如,以下命令將Fabrikam域中的所有計(jì)算機(jī)添加到受信任主機(jī)列表。

set-item wsman:localhost\\client\\trustedhosts *.fabrikam.com

若要將特定計(jì)算機(jī)的 IP 地址添加到受信任主機(jī)列表,請(qǐng)使用以下命令格式(IP支持通配符*):

set-item wsman:\\localhost\\Client\\TrustedHosts -value <IP Address>[,<IP Address>]

若要查看受信任主機(jī)列表,請(qǐng)使用以下命令:

get-item wsman:\\localhost\\Client\\TrustedHosts

二、遠(yuǎn)程操作常見場(chǎng)景

場(chǎng)景一:遠(yuǎn)程交互式會(huì)話

這個(gè)場(chǎng)景一般用于手動(dòng)進(jìn)行遠(yuǎn)程操作,輸入命令,查看結(jié)果。方法很簡(jiǎn)單。進(jìn)入交互式會(huì)話的命令是Enter-PSSession,退出時(shí)鍵入Exit-PSSession或者exit都可以。遠(yuǎn)程交互式操作期間,輸入的命令在遠(yuǎn)程計(jì)算機(jī)上運(yùn)行,就像直接在遠(yuǎn)程計(jì)算機(jī)上輸入并執(zhí)行這些命令一樣。期間所定義的變量和命令的執(zhí)行結(jié)果在退出交互式會(huì)話之后不再可用。

場(chǎng)景一例子:
#用戶輸入憑據(jù)(用戶名+密碼)
$cred=get-Credential
#建立遠(yuǎn)程交互式會(huì)話
Enter-PSSession-computername192.168.21.1-Credential$cred

場(chǎng)景二:腳本塊、腳本文件的一次性執(zhí)行

這種場(chǎng)景,是在本地計(jì)算機(jī)與遠(yuǎn)程計(jì)算機(jī)上建立一個(gè)臨時(shí)會(huì)話。將腳本塊或者腳本文件的內(nèi)容發(fā)送到遠(yuǎn)程計(jì)算機(jī)執(zhí)行,并將結(jié)果發(fā)回本地計(jì)算機(jī)。這種方法執(zhí)行效率很高,是PowerShell推薦的執(zhí)行遠(yuǎn)程命令的方法。除非需要在會(huì)話中共享數(shù)據(jù),否則建議使用該方法。

場(chǎng)景二例子、
#用戶輸入憑據(jù)(用戶名+密碼)
$cred=get-Credential
#遠(yuǎn)程執(zhí)行命令
invoke-command-computername192.168.21.1-Credential$cred-command{dirC:/}
invoke-command-computername192.168.21.1-Credential$cred-ScriptBlock{dirc:\\}
#遠(yuǎn)程執(zhí)行腳本
echodirc:\\>dirDriveC.ps1
invoke-command-computername192.168.21.1-Credential$cred-FilePath.\\dirDriveC.ps1

場(chǎng)景二例子(多個(gè)遠(yuǎn)程主機(jī))、
#用戶輸入憑據(jù)(用戶名+密碼)
$cred=get-Credential
#對(duì)多個(gè)遠(yuǎn)程主機(jī)批量執(zhí)行命令
invoke-command-computername192.168.21.1,192.168.21.4,192.168.21.7-Credential$cred-ScriptBlock{dirc:\\}
#設(shè)置并發(fā)連接數(shù)設(shè)置為1的情況
invoke-command-computername192.168.21.1,192.168.21.4,192.168.21.7-Credential$cred-ThrottleLimit1-ScriptBlock{dirc:\\}

場(chǎng)景三:腳本塊、腳本文件在命名會(huì)話中執(zhí)行

1、定義會(huì)話: 請(qǐng)使用new-pssession命令定義會(huì)話,如$session1 = new-pssession -computername server1。(如果必要請(qǐng)使用Credential參數(shù)。)

2、在會(huì)話中遠(yuǎn)程執(zhí)行腳本(或者腳本文件): 請(qǐng)使用Invoke-Command命令執(zhí)行遠(yuǎn)程腳本,如Invoke-Command -Session $session1 -ScriptBlock {dir c:\\}或者Invoke-Command -Session $session1 -FilePath .\\dirDriveC.ps1

3、獲得結(jié)果: 可以將執(zhí)行結(jié)果賦于變量,如$sub = Invoke-Command -Session $session1 -ScriptBlock {dir c:\\}或者$sub = Invoke-Command -Session $session1 -FilePath .\\dirDriveC.ps1

后續(xù)命令可參照步驟2或者3繼續(xù)執(zhí)行,所有執(zhí)行的命令就好像在同一個(gè)上下文中執(zhí)行一樣。

場(chǎng)景三例子、
#用戶輸入憑據(jù)(用戶名+密碼)
$cred=get-Credential
#創(chuàng)建PSSession,并賦值給變量
$session1=new-pssession-computername192.168.21.1-Credential$cred
#遠(yuǎn)程執(zhí)行命令(持續(xù)性)
Invoke-Command-Session$session1-ScriptBlock{$a=helloworld}
Invoke-Command-Session$session1-ScriptBlock{$a}

場(chǎng)景三例子(多個(gè)遠(yuǎn)程主機(jī))、
#用戶輸入憑據(jù)(用戶名+密碼)
$cred=get-Credential
#對(duì)多個(gè)遠(yuǎn)程主機(jī)創(chuàng)建PSSession,并賦值給變量
$session_many=new-pssession-computername192.168.21.1,192.168.21.4,192.168.21.7-Credential$cred
#對(duì)多個(gè)遠(yuǎn)程主機(jī)批量執(zhí)行命令
Invoke-Command-Session$session_many-ThrottleLimit1-ScriptBlock{dirc:\\}
場(chǎng)景三例子(腳本方式)、
$account=administrator
$password=\'123456\'
#把密碼轉(zhuǎn)換為SecureString
$secpwd=convertto-securestring$password-asplaintext-force
#新建PSCredential對(duì)象
$cred=new-objectSystem.Management.Automation.PSCredential-argumentlist$account,$secpwd
#遠(yuǎn)程主機(jī)列表賦值給變量
[string[]]$computername=192.168.21.1,192.168.21.4,192.168.21.7
#創(chuàng)建PSSession
$session_many=new-pssession-computername$computername-Credential$cred
#批量遠(yuǎn)程執(zhí)行命令
Invoke-Command-Session$session_many-ThrottleLimit1-ScriptBlock{dirc:\\}

參考資料:

https://technet.microsoft.com/zh-cn/library/dd347578.aspx

https://technet.microsoft.com/zh-cn/library/hh847839.aspx

https://technet.microsoft.com/zh-cn/library/dd347642.aspx

http://www.cnblogs.com/ceachy/archive/2013/02/20/PowerShell_Remoting.html

新聞名稱:windows服務(wù)器遠(yuǎn)程執(zhí)行命令(PowerShell+WinRM)
網(wǎng)站URL:http://www.rwnh.cn/article46/cpgieg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航網(wǎng)站維護(hù)、企業(yè)網(wǎng)站制作、靜態(tài)網(wǎng)站、品牌網(wǎng)站制作網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)
馆陶县| 吉林市| 石泉县| 平谷区| 麻江县| 桂东县| 八宿县| 柳河县| 小金县| 濮阳市| 华蓥市| 伊吾县| 杭锦旗| 永康市| 永福县| 团风县| 外汇| 北流市| 高州市| 水城县| 南和县| 华池县| 六枝特区| 白沙| 深圳市| 三穗县| 资阳市| 诸暨市| 阳江市| 郴州市| 剑河县| 阿克| 靖远县| 河曲县| 陇川县| 天气| 黑山县| 深泽县| 慈利县| 新野县| 颍上县|