您好,登錄后才能下訂單哦!
小編這次要給大家分享的是Python Tricks如何使用pywinrm遠程控制Windows主機,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
啟用 WinRM 遠程服務: winrm quickconfig
查看 WinRM 服務監聽狀態: 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 服務 。
啟用 允許通過 WinRM 進行遠程服務器管理 、 允許基本身份驗證 、 允許未加密通信 。
建議同時啟用服務與防火墻策略:
計算機配置-> 策略 -> Windows 設置 -> 安全設置 -> 系統服務 -> Windows Remote Management (WS-Management) ,啟動模式為自動。
計算機配置-> 策略 -> Windows 設置 -> 安全設置 -> 高級安全 Windows 防火墻 -> 高級安全 Windows 防火墻 - XXX -> 入站規則 ,開放 5985(HTTP)和 5986(HTTPS)端口。
二、Python 使用 pywinrm 連接 WinRM 服務
安裝 pywinrm 庫: pip install pywinrm
執行 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'
執行 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'
看完這篇關于Python Tricks如何使用pywinrm遠程控制Windows主機的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。