背景:工作中遇到了一个问题,需要用到windows向windows连接(文件传发)以及,linux向windows连接(文件传发)的需求。

自然而然会考虑到用paramiko,然而paramiko我用的比较多的还是连接linux的操作,至于连接windows的操作没用过。在网上搜索一段时间后,发现网上的教程基本上没有。折腾一段时间后发现了winrm,winrm在命令发送比较简单,但是文件上传、下载,还是没有合适的路子(或者说适合自己的方法)。一番折腾后还是想自己研究一把paramiko。

问题1:在网上搜索方法的时候,发现别人可以直接用paramiko连接windows,并用psutil 获取cpu、内存等数据,代码和我们连接linux基本一样的,那么我也来试一下:

import paramiko
client=paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname='***',port=22,username='Administrator',password='***')
client.close()

思考1:也可能是因为windows不支持ssh连接,那么我就试一下transaport:

scp=paramiko.Transport((IP,22))
scp.connect(username=username,password=password)
sftp=paramiko.SFTPClient.from_transport(scp)
scp.close()

依然遇到了同样的问题

思考2:既然别人可以,代码应该就没有问题,那么会是什么问题。网上搜索一番,发现可能和openssh有关系,接着下载openssh

问题2:按照下面的教程在目标window10 的机器上面安装了openssh之后,再次尝试了一把,但是还是遇到了“[WinError 10061] 由于目标计算机积极拒绝,无法连接。”
https://www.jianshu.com/p/6e5bc39d386e

思考3:会不会因为是22 端口没有开启导致的,于是乎查看端口情况发现端口是开的

思考4:会不会是因为防火墙的原因,关闭防火墙之后发现还是同样的问题,此时的心态已经接近崩溃

问题3:即使我们目标端的windows的机器安装了openssh但是我们还是不能连接上去:

思考5:继续尝试后发现我的目标windows的机器可以通过ssh连接到其他的机器上面,但是我却不能ssh到目标机器上面,这时候似乎明白了什么。查看服务发现ssh启动的只有sshd服务,此时我们把ssh的服务端和客户端都打开应该问题就解决了

ps:其实正在发现问题所在是我在用exe版安装openssh的时候发现了下面的选项,exe版安装是默认按照客户端和服务器端的,而我们源码安装应该只有客户端。

记一次paramiko远程连接遇到的坑的更多相关文章

  1. windows server服务器上mysql远程连接失败的坑

    windows server服务器上mysql远程连接失败的坑 背景:趁这阿里云活动,和朋友合伙买了个服务器,最坑的是没想到他买的是windows Server的,反正便宜,将就着用吧,自己装好了wa ...

  2. 记一次VNC远程连接Linux问题解决记录(5900端口测试、KDE桌面安装)

    最近几天,到一个项目上安装Linux部署环境.由于服务器在机房,而进机房又比较麻烦,于是选择VNC远程连接Linux就显得自然而然了.以前也用过VNC,而且还经常使用,由于各个项目环境不太一样,这次也 ...

  3. 阿里云轻量应用服务器——配置MySQL远程连接(踩坑,LAMP+CentOS)

    说在前面 本文讲解清晰,从0开始 如不能用Navicat等数据库软件远程登陆,请先检查:安全>防火墙中 是否添加了MYSQL的3306端口(ECS服务器请检查 安全组)如未添加,先点右上角“添加 ...

  4. paramiko远程连接linux服务器进行上传下载文件

    花了不少时间来研究paramiko中sftpclient的文件传输,一顿操作猛如虎,最后就一直卡在了路径报错问题,疯狂查阅资料借鉴大佬们的心得,还是搞不好,睡了个午觉醒来,仔细一看原来是指定路径的文件 ...

  5. 阿里云部署Redis服务器远程连接问题

    昨天在阿里云免费领了一个月的云服务器,就着最近学的SpringBoot,准备做一个SpringBoot与Redis的整合. 因为以前用的Redis都是安装在本地的,使用过程中没遇到什么大问题,可是一旦 ...

  6. python远程连接paramiko 模块和堡垒机实现

    paramiko使用 paramiko模块是基于python实现了SSH2远程安全连接,支持认证和密钥方式,可以实现远程连接.命令执行.文件传输.中间SSH代理功能 安装 pip install pa ...

  7. 利用Paramiko模块远程连接Linux

    使用Paramiko模块模拟SSH远程连接到服务器,并执行命令.(支持Tab键补全) 1.安装相关模块: 1)安装 Crypto 模块: 下载源码包解压 安装: sudo python setup.p ...

  8. python中使用paramiko模块并实现远程连接服务器执行上传下载

    paramiko模块 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 因此,如果需要使用SSH从一个平台连接到另外一个平台,进行一系 ...

  9. python paramiko模块:远程连接服务器

    1.  SFTP基于 用户名密码 登录服务器,实现上传下载: import paramiko transport = paramiko.Transport(()) # 生成trasport,配置主机名 ...

随机推荐

  1. map的实现--红黑树

    一.什么是红黑树???   红黑树首先是一棵搜索二叉树,树中的每一个结点的颜色不是黑色就是红色.它的特性如下:   1.根节点是黑色   2.每一个结点不是黑色就是红色   3.不能有连续的两个红色结 ...

  2. Drools规则引擎-判断集合(List)是否包含集合

    问题场景 在使用Drools规则引擎时,有朋友会遇到这样的问题,就是在when部分判断的两个参数都是集合类型,比如两个List,此时要判断一个集合是否包含另外一个集合的内容. 拿一个具体的例子来说明, ...

  3. Lockey的沙雕低错集锦(未完待续~自己提升用)

      (嘿嘿 (^~ ^)) 1. bitset<2100>a[2100]    a[x]|=(1<<x)   (1<=x<=2100)  使用时忘了x的范围,额,应 ...

  4. 预学第二天:计算机的基础知识+python安装+pycharm安装+思维导图

    目录 计算机的基础知识 计算机是由什么组成的 什么是操作系统

  5. [记录]FIO测试磁盘iops性能

    FIO测试磁盘iops性能 1.SATA和SAS盘原生IOPS如下: 2.RAID磁盘阵列对应的写惩罚级别: 3.计算功能性IOPS公式如下: 功能性 IOPS=(((总原生 IOPS×写 %))/( ...

  6. [记录]优化Linux 的内核参数来提高服务器并发处理能力

    优化Linux 的内核参数来提高服务器并发处理能力PS:在服务器硬件资源额定有限的情况下,最大的压榨服务器的性能,提高服务器的并发处理能力,是很多运维技术人员思考的问题.要提高Linux 系统下的负载 ...

  7. VNC服务配置

    Windows通过VNC远程桌面访问Ubuntu设备:一个WIN7的机器,一个系统为Ubuntu的机器 (二者可以均可为虚拟机或实体机) 目的:在Windows系统上通过VNC远程访问Ubuntu. ...

  8. 网络编程模型及TCP、UDP编程设计

    1.Linux网络模型 Linux网络编程--->>>socket套接字的编程 2.TCP网络模型                                          ...

  9. python3.5学习笔记(说明)

    本内容是自己在学习python过程中总结的知识点,只用于学习和交流,请勿用作商业用途,部分内容来自网络,如有侵权,联系删除.

  10. 【带着canvas去流浪(13)】用Three.js制作简易的MARVEL片头动画(下)

    目录 一. 模型的制作 1.1 生成字体模型 1.2 多表面贴图 二. 镜头及动画 三. 大作业总结 示例代码托管在:http://www.github.com/dashnowords/blogs 博 ...