iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >python通过Windows下远程控制Linux系统
  • 933
分享到

python通过Windows下远程控制Linux系统

pythonWindows远程控制linux 2022-06-04 22:06:41 933人浏览 独家记忆
摘要

一、学习目标 【通过windows下远程控制linux系统实现对Socket模块认识】 二、实验环境 Windows下(模拟客户端 [ IP:192.168.43.87 ] ):python3.6 Linux下(模拟服

一、学习目标

【通过windows下远程控制linux系统实现对Socket模块认识】

二、实验环境

Windows下(模拟客户端 [ IP:192.168.43.87 ] ):python3.6
Linux下(模拟服务端 [ IP:192.168.43.226 ] ):python2.7

三、前提条件

两者能够ping通
服务端关闭防火墙,selinux

四、代码

服务端代码(server.py):


#!/usr/bin/env Python
#coding:utf-8

import socket
import os

HOST = "192.168.43.226"
PORT = 5000
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
addr = (HOST,PORT)
s.bind(addr)       # 绑定地址
s.listen(1)       # 打开监听
conn,addr = sNTveDSb.accept()  # 同意建立连接
print(addr)       # 输出客户端IP

def get_client_file():   # 定义服务端获取文件函数
  conn.send("Ready to receive!")
  data = conn.recv(20480) # 接受客户端的数据
  print(data)
  with open("clientFile.txt",'wb') as f:
    f.write(data)
  conn.close()

def send_server_file():   # 定义服务端发送文件函数
  c_filepath = conn.recv(1024) # 接受客户机请求路径
  with open(c_filepath,'rb') as f:
    data = f.read()
    conn.sendall(data)
    conn.close()

def main():
  while True:
    cmd = conn.recv(1024)
    print(cmd) # 打印接受的命令
    if cmd == "q":
      break
    if cmd == "transdata":
      get_client_file()  # 获取客户端文件
      break
    if cmd == "recvdata":
      send_server_file() # 发送服务端文件
      break    
    data = os.popen(cmd)  # 响应客户端命令
    sdata = data.read()   
    if sdata:
      conn.sendall(sdata)
    else:
      conn.send("finish")     
  conn.close()  
  s.close()  
if __name__ == "__main__":
  main()

客户端(client.py):


import socket

HOST = "192.168.43.226"
PORT = 5000
c = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
addr = ((HOST,PORT))
c.connect(addr)     # 连接服务器

def send_client_file(): # 定义客户端发送文件函数
  data = c.recv(1024)   # 接收预备传输提示
  print(data)       
  c_filepath = input("Please enter the client file path:")
  with open(c_filepath,"rb") as f:
    file = f.read()   # 以byte方式读取文件内容
  c.sendall(file)     # 将读取的内容发往服务端

def get_server_file():   # 定义客户端接受文件函数
  s_filepath = input("Please enter the server file path:")
  c.send(bytes(s_filepath,encoding='gbk'))
  data = c.recv(20480)  # 等待接受服务器数据
  with open("shadow.txt","wb") as f:
    f.write(data)

def main():

  while True:
    cmd = input("Plsase input a command:")
    c.send(bytes(cmd,encoding="gbk"))  # 发送数据
    if cmd == "q":
      break
    if cmd == "transdata":   # 创建发送客户端文件命令
      send_client_file()
      break
    if cmd == "recvdata":    # 创建接收服务端文件命令
      get_server_file()
      break
    data = c.recv(20480)
    print(data)
  c.close()

if __name__ =="__main__":
  main()

五、测试结果(这里拿获取服务端shadow文件测试

在windows下运行client.py文件
》》键入:recvdata
》》键入:/etc/shadow

感兴趣的朋友可以一起研究讨论学习技术!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

--结束END--

本文标题: python通过Windows下远程控制Linux系统

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Windows系统远程控制Linux系统的详细图文方法介绍
    远程控制因为克服了地域的限制,所以在网络管理、远程技术支持、远程交流、远程办公等领域有着非常广泛的应用。Windows之间的远程控制大家都驾轻就熟了,今天笔者给大家介绍十分专业实用的Windows远程控制linux。 基...
    99+
    2023-05-26
    Windows 远程控制 Linux系统 系统 Linux 图文 方法
  • Linux下如何远程登陆Windows系统
    这篇文章将为大家详细讲解有关Linux下如何远程登陆Windows系统,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Linux下远程登陆Windows系统具体步骤1.在VMware环境分别搭建一台Linu...
    99+
    2023-06-28
  • Windows怎么实现远程连接控制Ubuntu系统
    本篇内容介绍了“Windows怎么实现远程连接控制Ubuntu系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!有时需要在实际的电脑上安装U...
    99+
    2023-06-16
  • 如何通过Nagios监控远程Windows服务器
    通过Nagios监控远程Windows服务器,需要安装Nagios Core或者Nagios XI,并配置Nagios Agent在...
    99+
    2024-04-09
    Nagios
  • windows系统下如何通过CMD来打开Node.js
    这篇“windows系统下如何通过CMD来打开Node.js”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“windows系统...
    99+
    2023-07-05
  • python远程登录windows系统
    首先安装wmi 命令:pip install wmi 然后会报错缺少pywin32-219.win-amd64-py2.7.exe包,去下面这个地址下载 http://sourceforge.net/projects/pywi...
    99+
    2023-01-31
    远程登录 系统 python
  • Python怎么远程控制Windows服务器
    本篇内容主要讲解“Python怎么远程控制Windows服务器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python怎么远程控制Windows服务器”吧!在很多企业会使用闲置的 Window...
    99+
    2023-06-30
  • Python控制windows系统音量实现实例
    使用python可以对windows系统的音量进行读取或者设置。 平台:visual studio code 语言:python 需要的python模块: 1、pyqt5 2、cty...
    99+
    2023-01-28
    Python控制系统音量 Python控制Windows音量
  • Linux下怎么通过Firejail提高系统安装
    本篇内容主要讲解“Linux下怎么通过Firejail提高系统安装”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Linux下怎么通过Firejail提高系统安装”吧!Firejail的作用是使进...
    99+
    2023-06-27
  • Windows+Linux系统下Go语言环境安装配置过程
    目录1. Windows安装配置1️⃣ 下载SDK2️⃣ 配置环境变量3️⃣ 配置go代理2. Linu...
    99+
    2024-04-02
  • Linux系统下的进程切换过程
    本篇内容介绍了“Linux系统下的进程切换过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Linux内核下进程切换Linux切换并没有使用...
    99+
    2023-06-13
  • linux系统下安装mysql的过程
    这篇文章主要介绍“linux系统下安装mysql的过程”,在日常操作中,相信很多人在linux系统下安装mysql的过程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linu...
    99+
    2024-04-02
  • windows系统怎么禁用注册表防止被远程控制?
    当你在使用Regedit编辑注册表时,编辑器菜单中有一个“注册表→连接网络注册表”的功能?微软此举的目的,主要是为了方便网络管理员对网络中的计算机进行管理,但如果被别有用心的用户从远程动...
    99+
    2023-06-15
    windows注册表 windows打开注册表 windows注册表详解 wi 系统 windows 注册表
  • 怎么通过SSH在远程Linux系统上运行命令
    这篇文章给大家分享的是有关怎么通过SSH在远程Linux系统上运行命令的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。通用语法如下所示:$ ssh [用户名]@[远程主机名或 IP]&...
    99+
    2023-06-16
  • Linux下如何配置SVN版本控制系统
    这篇文章主要为大家展示了“Linux下如何配置SVN版本控制系统”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下如何配置SVN版本控制系统”这篇文章吧。SVN是一个跨平台的开源的版本控...
    99+
    2023-06-27
  • 如何通过远程操控阿里云Windows服务器
    本文将介绍如何通过远程操控阿里云Windows服务器,以方便用户在远程位置对服务器进行管理和维护。我们将从安装远程桌面连接软件开始,逐步解释如何连接服务器、配置远程访问权限以及实现远程操控。 远程桌面连接(Remote DesktopCon...
    99+
    2024-01-14
    阿里 服务器 Windows
  • Ubuntu系统怎么开启远程控制
    本篇内容介绍了“Ubuntu系统怎么开启远程控制”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!如果网络功能越来越强大,大型服务器系统都采用了...
    99+
    2023-06-13
  • windows系统下Smss.exe加载win32k.sys过程详解
    Smss.exe(Session Manager Subsystem)是Windows操作系统中的一个关键进程,负责创建和管理用户会...
    99+
    2023-08-19
    windows
  • Linux系统下怎样通过Grub突破root用户
    这篇文章给大家分享的是有关Linux系统下怎样通过Grub突破root用户的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。先说grub的设置,如下default=1   timeout...
    99+
    2023-06-17
  • Linux系统下如何通过Grub突破root用户
    这篇文章将为大家详细讲解有关Linux系统下如何通过Grub突破root用户,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。先说grub的设置,如下default=1timeout=10splashimag...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作