Pywinrm,一个 Python 管理利器!
Pywinrm:打通跨平台管理的最后一公里
在混合IT环境里,Linux机器想管Windows服务器,这事儿一直挺让人头疼的。你猜怎么着?当SSH够不着Windows,PowerShell Remoting又没个统一的Python接口时,pywinrm模块就登场了。它通过Windows远程管理(WinRM)协议,让Python脚本能像在本地一样,轻松执行远程Windows命令,算是真正解决了跨平台管理的那个“老大难”问题。

快速安装与环境准备
好消息是,pywinrm的安装过程相当简单。它可是Ansible管理Windows节点的核心依赖,江湖地位摆在那儿。直接上pip命令就行:
!pip install pywinrm
import winrm
print("pywinrm模块导入成功")
print(f"支持的认证方式: basic, ntlm, kerberos, credssp")
执行后,你会看到类似这样的反馈,意味着环境已经就绪:
pywinrm模块导入成功
支持的认证方式:basic, ntlm, kerberos, credssp
WinRM协议端口:HTTP 5985 / HTTPS 5986
建立连接与执行基础命令
一切从建立会话开始。Session对象封装了所有连接细节,而run_cmd方法则是执行经典cmd命令的利器。来看个获取网络信息的例子:
session = winrm.Session(
'windows-server.example.com',
auth=('administrator', 'password'),
transport='ntlm')
result = session.run_cmd('ipconfig', ['/all'])
print(f"命令执行状态码: {result.status_code}")
print(result.std_out.decode('utf-8', errors='ignore')[:200] + "...")
命令执行后,返回的状态码和输出信息一目了然:
命令执行状态码:0
Windows IP Configuration
Host Name . . . . . . . . . . . . : WIN-SERVER
Primary Dns Suffix . . . . . . . : example.com...
执行PowerShell脚本
当然,pywinrm的真正威力,还得看它执行PowerShell脚本的能力。run_ps方法会自动帮你把脚本转换成Base64编码发送过去,省心省力。比如,想获取系统基本信息:
ps_script = """
$os = Get-CimInstance Win32_OperatingSystem
$cpu = Get-CimInstance Win32_Processor
"操作系统: " + $os.Caption
"处理器: " + $cpu.Name
"""
result = session.run_ps(ps_script)
output_lines = result.std_out.decode('utf-8', errors='ignore').strip().split('\n')
for line in output_lines:
print(f" {line}")
运行一下,远程服务器的核心配置就清晰呈现在眼前:
操作系统:Microsoft Windows Server 2024 Datacenter
处理器:Intel(R) Xeon(R) Platinum 8272CL CPU @ 2.60GHz
认证方式选择
安全连接是远程管理的前提。pywinrm支持多种认证方式,选对方式,成功率和安全性都能大幅提升。关键在于根据你的环境来配置:
session_ntlm = winrm.Session(
'server',
auth=('domain\\user', 'password'),
transport='ntlm')
print("认证方式配置完成")
print(" - NTLM: 本地+域账户")
print(" - Kerberos: 仅域账户")
print(" - CredSSP: 支持双跳")
简单来说,几种主要方式的适用场景是这样的:
认证方式配置完成
- NTLM:本地+域账户
- Kerberos:仅域账户
- CredSSP:支持双跳
优势对比分析与建议
那么,和SSH或者直接调用PowerShell Remoting相比,pywinrm到底强在哪儿?它的核心优势其实很明确:提供了一个统一的Python接口,并且能无缝集成到Ansible这样成熟的自动化生态里。
话说回来,它也不是没有短板。初始配置相对复杂,而且依赖Windows防火墙开放特定端口(5985或5986),这些都是需要考虑的因素。
所以,什么时候该用它呢?经验表明,当你需要自动化管理大批量Windows服务器,或者正在构建一个统一的、跨Linux和Windows的运维平台时,pywinrm绝对应该放在优先选项里。它解决的,正是那个最关键的“连接”问题。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
欧洲安全机构批评特斯拉FSD危险且命名误导
2025年3月30日消息,欧洲新车安全评鉴协会(Euro NCAP)的一名代表公开点名批评特斯拉的FSD(全自动驾驶)技术,直言其“既危险又不负责任”。这一严厉评价并非空穴来风——据Drive媒体报道,该代表已明确记录了相关言论。在接受澳大利亚和新西兰媒体采访时,Euro NCAP技术总监理查德·施
长安蓝鲸超擎混动发布 城区油耗宣称百公里2L
3月30日下午,长安汽车发布了一项重磅消息:今晚19:30,新一代混动技术“蓝鲸超擎”将面向全球正式发布。其宣传标语极具吸引力——城区油耗将直接迈入百公里2L时代。没错,你没有看错,是2L,不是3L,也不是2 98L,而是官方承诺进入“2L时代”。 从官方公布的宣传海报来看,蓝鲸超擎动力的供应链阵容
五菱缤果Pro 4月14日开启预售 CLTC续航330-403km
近期车圈关注度颇高的,当属五菱推出的这款纯电微型车——五菱缤果 Pro。核心信息抢先看:该车已正式确认将于 4 月 14 日开启预售,备受期待的纯电微型电动车终于要来了。 外观设计方面,新车重点围绕“Pro”化升级展开。封闭式前脸搭配复古风格圆形大灯,三段式日行灯带点亮后辨识度极高,一眼就能在车流中
年中国人口增长十强城市珠三角包揽前三
2025年中国人口增长十强城市出炉,深圳、东莞、广州位列前三,均来自珠三角。深圳常住人口达1824 85万,增量25 9万居首。广东全年净流入约50万人,经济总量连续37年居全国首位,多项核心发展指标稳居第一。
九号公司预计2025年净利润16.7亿至18.5亿同比增长约54%-71%
九号公司近日公布了令人瞩目的业绩预告。1月29日,该公司正式公告,预计2025年度归属于上市公司股东的净利润将达到16 7亿元至18 5亿元,与2024年的10 84亿元相比,同比增长幅度高达54 04%至70 64%。这一接近翻倍的增长态势,无疑引发了市场的广泛关注与高度期待。 那么,这份强劲的增
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
相关攻略
2026-07-06 13:39
2026-07-06 13:39
2026-07-06 13:39
2026-07-06 13:39
2026-07-06 13:39
2026-07-06 13:38
2026-07-06 13:38
2026-07-06 13:38
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

