前序
實情的起因是醬的,因為某次的斷電,導致我們的防毒主機死機了,又因為剛好沒有分的關係原因不好說,所以導致我們的Server只能面臨重建的命運。
然而重建,卻導致Agent也要重新安裝,但問題是公司有將近1000
台設備,分散在各樓層與其他外點(中國、荷蘭、日本),看著同仁日漸絕望的眼神( º﹃º )與上層不要臉的壓力(對,我就是不爽你們),我決定提出一個解決方案幫助同仁度過難關。
Windows Remote Mangement
因為設備都有加入網域管理的關係,剛好可以透過GPO來開啟WinRM
打開組策略管理控制台 ,選擇包含要啟用 WinRM 的計算機的 Active Directory 容器(組織單位),然後創建新的 GPO:corpEnableWinRM;
打開群組原則進行編輯 對剛新增的GPO,右鍵編輯;
轉到「電腦設定」-「原則」->「Windows 設定」->”安全設置“->”系統服務“。找到 Windows 遠端服務 (WS-Management) 服務併為其啟用自動啟動;然後轉到「電腦設定」->「喜好設定」->「控制台設定」->「服務」。選擇「新建 -> 服務」。輸入服務名稱 WinRM,然後在「恢復」選項卡上選擇「重新啟動服務」操作;
轉到「電腦設定」->「原則」->「系統管理範本」->「Windows 元件」->「Windows 遠端管理 (WinRM)」->「WinRM 服務」→啟用「允許通過 WinRM 進行遠端伺服器管理」。在“Ipv4/IPv6 篩選器”框中,可以指定必須偵聽 WinRM 連接的IP 位址或子網。如果要允許所有IP位址上的WinRM連接,請在此處保留 ;
創建Windows Defender防火牆規則,允許在預設埠 TCP/5985 和 TCP/5986 上建立 WinRM 連接。轉到「電腦設定」->「原則」->「Windows設定」->「安全設置」->「具有進階安全性的 Windows 防火牆」->「具有進階安全性的 Windows 防火牆」->「輸入規則」。選擇「Windows 遠端管理預定義規則」;
轉到「電腦設定」->「原則」->「系統管理範本」->「Windows 元件」->「Windows 遠端 Shell [Windows 遠端殼層]」,然後啟用“允許遠端 Shell 訪問 [允許遠端殼層存取]。
到目前為止,終於把GPO開完啦~ 套用到目的部門之後,就可以進入主題了
PowerShell
開始看之前先聽我說再繼續多嘴一下(ゝ∀・)b
- 修改 Client_list.txt
※檔案須放置D槽根目錄底下
點擊打開 Remote_install.ps1,修改Username & Password
開啟PowerShell執行,或者對 Remote_install.ps1 按右鍵執行 > 用Powershell執行
輸入要進行遠端操作的檔名 ( 含副檔名 )
失敗的清單將會寫在Error.txt中
1 | $Username = 'domain\administrator' |
後言
我知道我不厲害,在真正的軟體工程師眼裡,這個跟屎依樣,但這確實能很好的幫我解決問題,這樣足以。
Github: https://github.com/luca-yao/Remote_isntall