Python Tricks 使用 pywinrm 遠程控制 Windows 主機的方法
WinRM 即 Windows Remote Management,是微軟對于WS-Management 遠程管理協(xié)議的實現(xiàn)。
一、受控端配置 WinRM 服務(wù)
方式一:cmd 命令行(管理員)
- 啟用 WinRM 遠程服務(wù):
winrm quickconfig
- 查看 WinRM 服務(wù)監(jiān)聽狀態(tài):
winrm e winrm/config/listener
C:\Windows\system32>winrm e winrm/config/listener Listener [Source="GPO"] Address = * Transport = HTTP Port = 5985 Hostname Enabled = true URLPrefix = wsman CertificateThumbprint ListeningOn = 127.0.0.1, 169.254.52.7, xx.xx.xx.xx, ::1, fe80::3989:dd91:e6b3:6f41%15, fe80::fd01:a9fd:c410:3407%12
允許使用 Basic 認證方式: winrm set winrm/config/service/auth @{Basic="true"}
winrm set winrm/config/service/auth @{Basic="true"} Auth Basic = true [Source="GPO"] Kerberos = true Negotiate = true Certificate = false CredSSP = false CbtHardeningLevel = Relaxed
允許 WinRM 使用非加密的連接: winrm set winrm/config/service @{AllowUnencrypted="true"}
方式二:bat 腳本
call winrm quickconfig -quiet call winrm set winrm/config/service/auth @{Basic="true"} call winrm set winrm/config/service @{AllowUnencrypted="true"}
方式三:組策略
定位到 計算機配置 -> 策略 -> 管理模板 -> Windows 組件 -> Windows 遠程管理(WinRM) -> WinRM 服務(wù) 。
啟用 允許通過 WinRM 進行遠程服務(wù)器管理 、 允許基本身份驗證 、 允許未加密通信 。
建議同時啟用服務(wù)與防火墻策略:
計算機配置-> 策略 -> Windows 設(shè)置 -> 安全設(shè)置 -> 系統(tǒng)服務(wù) -> Windows Remote Management (WS-Management) ,啟動模式為自動。
計算機配置-> 策略 -> Windows 設(shè)置 -> 安全設(shè)置 -> 高級安全 Windows 防火墻 -> 高級安全 Windows 防火墻 - XXX -> 入站規(guī)則 ,開放 5985(HTTP)和 5986(HTTPS)端口。
二、Python 使用 pywinrm 連接 WinRM 服務(wù)
安裝 pywinrm 庫: pip install pywinrm
執(zhí)行 cmd 命令:
>>> import winrm >>> session = winrm.Session('xx.xx.xx.xx', auth=('Administrator', 'admin_password')) >>> cmd = session.run_cmd('ipconfig') >>> cmd.std_out b'\r\nWindows IP Configuration\r\n\r\n\r\nEthernet adapter \xd2\xd4\xcc\xab\xcd\xf8:\r\n\r\n Connection-specific DNS Suffix . : example.com\r\n Link-local IPv6 Address . . . . . : fe80::3989:dd91:e6b3:6f41%15\r\n IPv4 Address. . . . . . . . . . . : xx.xx.xx.xx\r\n Subnet Mask . . . . . . . . . . . : 255.255.255.0\r\n Default Gateway . . . . . . . . . : 172.20.23.254\r\n\r\nEthernet adapter \xd2\xd4\xcc\xab\xcd\xf8 2:\r\n\r\n Media State . . . . . . . . . . . : Media disconnected\r\n Connection-specific DNS Suffix . : \r\n'
執(zhí)行 Powershell 命令:
>>> import winrm >>> session = winrm.Session('xx.xx.xx.xx', auth=('Administrator', 'admin_password')) >>> ps = session.run_ps('Get-Disk') >>> ps.std_out b'\r\nNumber Friendly Name Serial Number HealthStatus OperationalStatus Total Size Partition \r\n Style \r\n------ ------------- ------------- ------------ ----------------- ---------- ----------\r\n0 ST500DM002... Z3TFS1S3 Healthy Online 465.76 GB MBR \r\n\r\n\r\n'
到此這篇關(guān)于Python Tricks 使用 pywinrm 遠程控制 Windows 主機的方法的文章就介紹到這了,更多相關(guān)Python Tricks遠程控制 Windows 主機內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python列表添加元素append(),extend(),insert(),+list的區(qū)別及說明
這篇文章主要介紹了python列表添加元素append(),extend(), insert(),+list的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12python中l(wèi)ogging模塊的一些簡單用法的使用
這篇文章主要介紹了python中l(wèi)ogging模塊的一些簡單用法的使用,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02Python使用BeautifulSoup爬取網(wǎng)頁數(shù)據(jù)的操作步驟
在網(wǎng)絡(luò)時代,數(shù)據(jù)是最寶貴的資源之一,而爬蟲技術(shù)就是一種獲取數(shù)據(jù)的重要手段,Python 作為一門高效、易學(xué)、易用的編程語言,自然成為了爬蟲技術(shù)的首選語言之一,本文將介紹如何使用 BeautifulSoup 爬取網(wǎng)頁數(shù)據(jù),并提供詳細的代碼和注釋,幫助讀者快速上手2023-11-11Python深度學(xué)習(xí)pytorch神經(jīng)網(wǎng)絡(luò)多輸入多輸出通道
這篇文章主要為大家介紹了Python深度學(xué)習(xí)中pytorch神經(jīng)網(wǎng)絡(luò)多輸入多輸出通道的詳解有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2021-10-10numpy數(shù)組做圖片拼接的實現(xiàn)(concatenate、vstack、hstack)
這篇文章主要介紹了numpy數(shù)組做圖片拼接的實現(xiàn)(concatenate、vstack、hstack),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11python?實現(xiàn)syslog?服務(wù)器的詳細過程
這篇文章主要介紹了python?實現(xiàn)syslog服務(wù)器的詳細過程,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08