Python使用winrm连接windows服务器

今天忽然想到了一个功能, 如果是linux 服务器,可以使用ssh远程连接, 如果是windows服务器,该怎么去操作呢?

这个时候就需要winrm模块了,

winrm 是一个在python中使用命令行远程连接window服务器的模块,可以执行一些shell命令

那么要怎么连接呢?

首先第一步,安装 winrm模块

pip install pywinrm

第二步 在服务器上开启winrm服务

在powershell中执行以下三条命令

winrm quickconfig
winrm set winrm/config/service/auth '@{Basic="true"}'
winrm set winrm/config/service '@{AllowUnencrypted="true"}'

然后就可以编辑python代码了

import winrm
# 端口一般是 5985 或 5986 我们只有http ,就使用5985
con = winrm.Protocol(endpoint="http://你的服务器ip:服务器端口/wsman",transport='plaintext',username=服务器用户名,password=服务器密码)
# 设置连接和编码格式  936是gbk
ps = con.open_shell(codepage='936')
cmd = "ipconfig"
# 执行cmd命令
res = con.run_command(ps,cmd)
# 获取执行的返回结果
result = con.get_command_output(ps,res)
print(result)
# 关闭powershell窗口
con.close_shell(ps)

打印结果就可以了

标签:
作者:admin_rose
我只相信自己,终有一天会完成自己梦想中的事情
版权所有原创文章,转载请保留或注明出处:http://www.antvv.com/?id=16

已有 0 位网友参与,快来吐槽:

发表评论