返回顶部
首页 > 资讯 > 服务器 >Python远程控制Windows服务器的方法详解
  • 195
分享到

Python远程控制Windows服务器的方法详解

2024-04-02 19:04:59 195人浏览 安东尼
摘要

目录1. 被控端 windows启动 winrm 服务检查 winrm 服务监听状态查看 winrm 配置信息(可选)配置 winrm client配置 winrm service2

在很多企业会使用闲置的 Windows 机器作为临时服务器,有时候我们想远程调用里面的程序或查看日志文件

Windows 内置的服务「 winrm 」可以满足我们的需求

它是一种基于标准简单对象访问协议( SOAP )的防火墙友好协议,允许来自不同供应商的硬件和操作系统进行互操作

官网地址

1. 被控端 windows

这里以 Windows 10 系统机器为例

具体操作步骤如下:

启动 winrm 服务

以管理员权限打开 CMD 命令窗口,输入下面命令启动 winrm 服务

# 启动winrm服务
winrm quickconfig -q

如果运行报错,提示网络类型设置异常

图片

可以快捷键 win+i 进入到网络和 Internet,更改网络配置文件,由公用切换为专用

图片

检查 winrm 服务监听状态

继续在命令行输入下面命令,查看 winrm 服务的状态

PS:注意这里的端口号 Port 值后面连接会用到

# 查看winrm服务的状态
winrm e winrm/config/listener

# 结果
Listener
    Address = *
    Transport = Http
    Port = 5985
    Hostname
    Enabled = true
    URLPrefix = wsman
    CertificateThumbprint
    ListeninGon = **

查看 winrm 配置信息(可选)

通过以下命令可以查看 winrm 全部配置信息、client 客户端配置信息、service 服务端配置信息

# 全部
winrm get winrm/config

# Client
winrm get winrm/config/client

# Service
winrm get winrm/config/service

配置 winrm client

# 配置winrm client
winrm set winrm/config/client @{AllowUnencrypted="true"}</code>
<code>winrm set winrm/config/client @{TrustedHosts="*"}</code>
<code>winrm set winrm/config/client/auth @{Basic="true"}

配置 winrm service

在配置完 winrm service 和 winrm client 后,我们通过通过步骤 1-3 查看配置文件,确保配置文件已生效

# 配置winrm service
winrm set winrm/config/service @{AllowUnencrypted="true"}

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

2. 控制端

在控制端,比如:Mac OSX、linux,我们只需要安装「 pywinrm 」依赖包即可

# 控制端安装依赖包
pip3 install pywinrm

3. 实战一下

做为以上准备后,我们就可以编写代码对 Windows 进行控制了

首先,我们需要 ip 地址、端口号、用户名、密码连接 Windows 被控端

# 连接windows
import winrm

...
# ip地址:端口号
# winrm server端口号
# auth:用户名和密码
self.session = winrm.Session("192.168.**.**:5985", auth=('username', 'passWord'), transport='ntlm')
...

这样,我们就可以通过对象的「 run_cmd 」和「 run_ps 」函数模拟 CMD、Powershell 输入命令了 

这里以查看 Windows 某个硬盘目录下的日志文件为例

# 连接windows
import winrm
import codecs
...
 def exec_cmd(self, cmd):
        """
        执行cmd命令,获取返回值
        :param cmd:
        :return:
        """
        # CMD
        result = self.session.run_cmd(cmd)
        # powerShell
        # result = self.session.run_ps(cmd)
        # 返回码
        # code为0代表调用成功
        code = result.status_code

        # 根据返回码,获取响应内容(bytes)
        content = result.std_out if code == 0 else result.std_err

        # 转为字符串(尝试通过UTF8、GBK进行解码)
        # result = content.decode("utf8")
        # result = codecs.decode(content,'UTF-8')
        try:
            result = content.decode("utf8")
        except:
            result = content.decode("GBK")

        print(result)
        return result
...
# 打开文件D:/py/log/trade.log
# windows使用type命令,查看文件内容
result = self.exec_cmd('D: &cd py\\log &type trade.log')

# 查看结果
print(result)

4. 总结

除了可以远程查看 Windows 的文件外,还可以执行 bat 批处理文件,又或者是模拟命令行输入,根据返回值进行其他骚操作

到此这篇关于python远程控制Windows服务器的方法详解的文章就介绍到这了,更多相关Python远程控制Windows服务器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python远程控制Windows服务器的方法详解

本文链接: https://lsjlt.com/news/118203.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python远程控制Windows服务器的方法详解
    目录1. 被控端 windows启动 winrm 服务检查 winrm 服务监听状态查看 winrm 配置信息(可选)配置 winrm client配置 winrm service2...
    99+
    2024-04-02
  • Python怎么远程控制Windows服务器
    本篇内容主要讲解“Python怎么远程控制Windows服务器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么远程控制Windows服务器”吧!在很多企业会使用闲置的 Window...
    99+
    2023-06-30
  • 控制远程云服务器的方法是什么
    控制远程云服务器的方法有多种,以下是常见的几种方法:1. 远程桌面协议(Remote Desktop Protocol,RDP):通...
    99+
    2023-09-26
    云服务器
  • Windows系统远程控制Linux系统的详细图文方法介绍
    远程控制因为克服了地域的限制,所以在网络管理、远程技术支持、远程交流、远程办公等领域有着非常广泛的应用。Windows之间的远程控制大家都驾轻就熟了,今天笔者给大家介绍十分专业实用的Windows远程控制linux。 基...
    99+
    2023-05-26
    Windows 远程控制 Linux系统 系统 Linux 图文 方法
  • Win7的远程桌面控制使用方法图文详解
      Win7的远程桌面控制需要设置两台联网的电脑,具体方法如下:   在被连接上的电脑设置:   第一,在计算机图标右击,选择属性,在打开的“系统”窗口点击“远程设置”,在...
    99+
    2023-06-03
    win7 远程桌面控制 使用 方法 远程桌面 控制
  • linux 远程控制windows系统下的程序(三种方法)
    有时候我们需要通过在linux上远程运行windows系统上的程序。 方法一: 通过python中的 winrm模块,前提条件,先提前设置好winrm服务。如何设置请自行百度,winRM服务是windows server...
    99+
    2022-06-04
    linux 远程控制 linux windows 程序
  • 云服务器远程控制
    云服务器远程控制是一种虚拟设备控制协议,可以在云服务器上使用远程控制技术来控制其他远程服务器。 云服务器远程控制的基本原理是,控制器将云服务器连接到客户机的路由器上,然后向客户机发送控制请求。在客户机收到控制请求后,云服务器会判断请求是否...
    99+
    2023-10-26
    远程控制 服务器
  • 远程控制云服务器
    远程控制云服务器是指通过远程服务器管理软件(如Web服务器管理器或Telnet等)来远程对云服务器进行访问和控制的应用程序。以下是远程控制云服务器的几种常用方法: 通过浏览器对云服务器进行访问:使用Web浏览器或其他浏览器的客户端软件来...
    99+
    2023-10-26
    远程控制 服务器
  • 手机远程控制云服务器设备的使用方法
    1. 选择适合的远程控制工具 要远程控制云服务器设备,首先需要选择适合的远程控制工具。以下是一些常用的远程控制工具: SSH(Secure Shell):SSH 是一种加密的网络协议,可以通过终端或命令行界面远程连接到云服务器设备。它是...
    99+
    2023-10-28
    使用方法 远程控制 服务器
  • python魔法方法-属性访问控制详解
    属性访问控制 所谓的属性访问控制就是控制点号访问属性的行为,而且不仅是类的外部,连类的内部也受控制,代码见真章,边看代码边解释: •__getattr__(self, item) 定义当访问不存...
    99+
    2022-06-04
    详解 访问控制 属性
  • Python实现用手机监控远程控制电脑的方法
    一、前言 很多时候,我们都有远程控制电脑的需求。比如正在下载某样东西,需要让电脑在下载完后关机。或者你需要监控一个程序的运行状况等。 今天我们就来用Python实现一个远程监控并控制电脑的小程序。 二、实现原理 ...
    99+
    2022-06-02
    Python 远程控制电脑 Python 手机远程控制电脑
  • Java程序的逻辑控制和方法详解
    一、顺序结构 从上往下执行,非常简单,不做过多赘述。 二、分支结构 1.if语句 与c语言不同的是,java的if(布尔表达式)必须是布尔表达式 eg:判断某一年是否是闰年 p...
    99+
    2024-04-02
  • 亚马逊云服务器无法远程控制
    检查安全组:确保RDS实例的安全组允许从源服务器的安全组访问,如果没有此属性,则需要从RDS控制台UI中指定该安全组。 检查访问权限:检查RDS实例所属的访问权限,确保其可进行远程访问。如果RDS实例所属的访问权限已被更改,则无法远程控制...
    99+
    2023-10-27
    亚马逊 远程控制 服务器
  • 云服务器怎么远程控制
    云服务器可以远程控制,您只需要提供一个浏览器或连接到您的云服务器提供商的服务器。以下是一些可能需要考虑的步骤:连接到您的云服务器提供商:首先,确保您已经连接到您的云服务器提供商的网络。您可以使用您的互联网连接或VPN连接,以便您可以在同一时...
    99+
    2023-10-25
    远程控制 服务器
  • 云服务器远程控制电脑
    云服务器远程控制电脑需要遵守安全合规的相关规定,例如使用受信任的云服务器提供商,使用合法的用户名和密码,配置访问控制列表,设置用户和密码等安全措施,以确保控制访问权限的合法性和安全性。 如果您需要远程控制电脑,建议您采取以下步骤: 选择...
    99+
    2023-10-26
    远程控制 服务器 电脑
  • 云服务器手机远程控制
    云服务器手机远程控制通常需要借助于专门的应用程序或服务来实现。以下是一些常见的云服务器手机远程控制应用和服务: Surmur-Secret Contesting (SSCC):这是一个基于云服务器的匿名性质的挑战比赛,参赛者可以通过发送...
    99+
    2023-10-26
    远程控制 服务器 手机
  • 腾讯云服务器远程控制
    腾讯云服务器远程控制可以用于管理服务器的远程用户,以及监控服务器的性能和安全性。当需要远程访问服务器时,你可以使用以下几种方法: 使用虚拟专用网络(VPN):使用一台计算机连接到另一台计算机。VPN可以为不同的设备、计算机和用户创建一条...
    99+
    2023-10-26
    腾讯 远程控制 服务器
  • 远程控制腾讯云服务器
    远程控制腾讯云服务器可能会被黑客利用,他们可以通过各种手段来控制你的云服务器,这可能包括监视你的账户,远程擦除你的数据、破解你的登录密码、控制你的网络、控制你的网络流量等。为了保护你的隐私和安全,你应该采取以下措施: 定期更新你的腾讯云...
    99+
    2023-10-26
    腾讯 远程控制 服务器
  • 阿里云服务器远程控制
    阿里云服务器远程控制可以用于任何需要远程访问的应用程序,例如在线游戏、视频会议等等。以下是一些常见的远程控制方法: 阿里云服务器监控(SVN):可以在阿里云服务器上创建一个SVN,用于管理和跟踪服务器状态和配置。 阿里云服务器控制台:可...
    99+
    2023-10-26
    阿里 远程控制 服务器
  • 怎么远程控制云服务器
    远程控制云服务器是指通过远程登录(Telnet)或者其他远程控制方式,控制服务器上运行的服务,例如网站、邮件、文件传输等等。这些服务需要对服务器上的数据和系统进行访问和操作,因此远程控制可能会涉及到数据隐私和安全方面的问题。 通常情况下,...
    99+
    2023-10-27
    远程控制 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作