首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Paramiko连接到SFTP服务器失败,并显示“需要一个整数(got str)”

Paramiko是一个用于SSHv2协议的Python实现,它提供了连接、执行命令和传输文件等功能。SFTP(SSH File Transfer Protocol)是SSH协议的一部分,用于在远程服务器和本地之间安全地传输文件。

当使用Paramiko连接到SFTP服务器失败并显示“需要一个整数(got str)”错误时,这通常是由于以下原因之一引起的:

  1. 参数错误:确保在连接SFTP服务器时,传递的参数正确无误。例如,确认主机名、端口号、用户名和密码等参数是否正确设置。
  2. SSH密钥验证问题:SFTP服务器可能要求使用SSH密钥进行身份验证。在连接之前,您需要确保已正确配置SSH密钥,并将其添加到Paramiko的密钥代理中。
  3. SFTP服务器配置问题:检查SFTP服务器的配置,确保它已正确设置并正在运行。确保SFTP服务器支持SSHv2协议,并且已正确配置以允许连接。
  4. 网络连接问题:检查网络连接是否正常。确保您的计算机可以访问SFTP服务器,并且没有任何防火墙或网络限制阻止连接。

如果您遇到这个错误,可以尝试以下解决方法:

  1. 检查参数:仔细检查连接SFTP服务器时传递的参数,确保它们正确无误。
  2. 配置SSH密钥:如果SFTP服务器要求使用SSH密钥进行身份验证,请确保已正确配置SSH密钥,并将其添加到Paramiko的密钥代理中。
  3. 检查SFTP服务器配置:确认SFTP服务器已正确配置,并且支持SSHv2协议。如果有必要,参考SFTP服务器的文档进行配置。
  4. 检查网络连接:确保您的计算机可以访问SFTP服务器,并且没有任何防火墙或网络限制阻止连接。尝试使用其他网络连接进行测试,以确定是否存在网络问题。

腾讯云提供了一系列与云计算相关的产品,包括云服务器、云数据库、云存储等。您可以根据具体需求选择适合的产品。以下是一些腾讯云产品的介绍链接:

  • 腾讯云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos

请注意,以上答案仅供参考,具体解决方法可能因环境和配置而异。如果问题仍然存在,请参考Paramiko和SFTP服务器的文档,或者咨询相关技术支持人员以获取更详细的帮助。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

原来Python是这样连接远程主机的,你会吗?

,OpenSSH是其中一个开源实现,paramiko是Python的一个库,实现了SSHv2协议(底层使用cryptography)。...有了Paramiko以后,我们就可以在Python代码中直接使用SSH协议对远程服务器执行操作,而不是通过ssh命令对远程服务器进行操作。下面主要介绍一下Paramiko的一些相关概念。...Paramiko的基本使用 1. SSHClient常用的方法介绍 (1) connect():实现远程服务器的连接与认证,对于该方法只有hostname是必传参数。...即新建立ssh连接时不需要再输入yes或no进行确认 WarningPolicy 用于记录一个未知的主机密钥的python警告。...此为默认选项 (3) exec_command():在远程服务器执行Linux命令的方法。 在这里插入图片描述 (4) open_sftp():在当前ssh会话的基础上创建一个sftp会话。

2K40

python paramiko模块简介

SSH从一个平台连接到另外一个平台,进行一系列的操作时,paramiko是最佳工具之一。     ...举个常见的例子,现有这样的需求:需要使用windows客户端,远程连接到Linux服务器,查看上面的日志状态,大家通常使用的方法会是: 1:用telnet 2:用PUTTY 3:用WinSCP 4:用XManager...那常用的办法可能会是: 1:Linux上安装FTP配置 2:Linux上安装Sambe配置…     大家会发现,常见的解决方法都会需要对远程服务器必要的配置,如果远程服务器只有一两台还好说,如果有...使用paramiko可以很好的解决以上问题,比起前面的方法,它仅需要在本地上安装相应的软件(python以及PyCrypto),对远程服务器没有配置要求,对于连接多台服务器,进行复杂的连接操作特别有帮助...运行任意命令,并将结果输出 如果linux服务器开放了22端口,在windows端,我们可以使用paramiko远程连接到服务器执行任意命令,然后通过 print或其它方式得到该结果, 代码如下

1K10
  • 【实战小项目】python开发自动化运维工具--批量操作主机

    1 思路分析 在运维工作中,古老的方式部署环境、上线代码可能都需要手动在服务器上敲命令,不胜其烦。所以,脚本,自动化工具等还是很有必要的。...我觉得一个批量操作工具应该考虑以下几点: (1)本质上,就是到远程主机上执行命令返回结果。 (2)做到批量。也就是要并发对多台机器进行操作。 (3)将返回的结果,清晰地展示给用户。...2 到远程机器上执行命令 到远程机器上执行命令,返回结果,至少有两种方式:一是用paramiko模块;而是可以建立机器互信,从中控执行ssh命令。...self.u, pkey=pkey) sftp = paramiko.SFTPClient.from_transport(transport) return sftp,...从执行结果来看,高亮显示,清新明了。既显示了各个主机的各个命令执行状态码,返回结果,最后还汇总结果,成功了多少台机器和失败了多少台机器。 我们还可以换一下执行的命令,让命令执行失败看看: ?

    1.3K20

    Python建立ssh连接|paramiko实践

    之前写了一篇Python调用系统命令的六种方法,但是执行linux命令时,需要在本地运行,如果想远程执行命令,就要用到另一个paramiko。...SSHClient类的使用 SSHClient类的主要方法: 1.connect方法,实现远程ssh连接校验 connect() 常用参数: hostname 连接的目标主机 port=SSH_PORT...,remotepath) #将本地文件上传到服务器 Localpath str : 上传文件本地源 Remotepath str : 远程路径 3、get方法 get(remotepath, localpath...获取远程SFTP服务器端指定的目录列表,返回list形式 sftp.listdir(“/home”) stat 获取远程主机指定文件信息 sftp.stat(“/home/test.sh”) 使用实例...:\helloword.txt sftp.get('/home/testa.txt', 'D:\helloword.txt') transport.close() 可以根据需要,将常用的功能封装,比如实现一个类似

    2.7K51

    paramiko模块

    介绍 ssh是一个协议,OpenSSH是其中一个开源实现,paramiko是Python的一个库,实现了SSHv2协议(底层使用cryptography)。...有了Paramiko以后,我们就可以在Python代码中直接使用SSH协议对远程服务器执行操作,而不是通过ssh命令对远程服务器进行操作。...由于paramiko属于第三方库,所以需要使用如下命令先行安装 pip3 install paramiko 组件 SSHClient的作用类似于Linux的ssh命令,是对SSH会话的封装,该类封装了传输...; pkey(Pkey类型),私钥方式用于身份验证; key_filename(str or list(str)类型),一个文件名或文件名列表,用于私钥的身份验证; timeout(float类型),一个可选的超时时间...= paramiko.SFTPClient.from_transport(transport) #创建一个已连通的SFTP客户端通道。

    1.3K21

    python安装需要安装paramiko

    2.paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。...由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台,如Linux,Solaris,BSD,MacOSX,Windows等,paramiko都可以支持,因此,如果需要使用SSH...从一个平台连接到另外一个平台,进行一系列的操作时,paramiko是最佳工具之一。...下面是两种使用paramiko接到linux服务器的代码 方式一: ssh = paramiko.SSHClient()ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy...22端口,在windows端,我们可以使用paramiko远程连接到服务器执行任意命令,然后通过print或其它方式得到该结果, 代码如下: #!

    1.6K20

    分享一个自写的Python远程命令和文件(夹)传输类

    最近在跟一个自动化发布平台的建设事项,其中 Linux 系统的远程控制通道则由我独立开发完成,其中涉及到了 Linux 系统远程命令和文件传输操作。...,需要先删除known_hosts中记录,用法:若返回503则重新下发即可 if "Host key for server" in str(e): os.system...,需要先删除known_hosts中记录 if "Host key for server" in str(e): os.system('sed -...paramiko和pysftp插件(推荐pip命令安装) from xxxx import remoteCtrl # 执行远程命令,需要传入远程服务器ip地址、密码、命令、远程ssh端口,用户名和超时时间...,ret_info 则是远程命令的打屏信息(含报错) # 进行文件传输,需要传入远程服务器ip地址、密码、源文件路径、目标文件路径、传输动作(pull/push)、用户名、端口和超时时间 myHandler

    2.4K70

    python实现主机批量管理

    paramiko模块,paramiko模块是第三方模块 安装:pip install paramiko或者yum install python-paramiko如果都安装失败的话可以使用源码安装 源码包下载地址...用户名','密码')     //连接服务器 stdin,stdout,stderr = ssh.exec_command("命令")      //执行命令,标准输出,命令成功返回,命令失败返回 ssh.close...()                         //关闭连接 上传、下载: get_put = paramiko.Transport((ip,port)) //服务器ip和端口(使用SFTP使用...) get_put.connect(username="root", password="123.com")    //连接服务器,用户名和密码 sftp = paramiko.SFTPClient.from_transport...(get_put)     //使用SFTP协议 sftp.put(需要上传的文件,上传文件保存的位置)              //上传 sftp.get(下载文件的位置, 下载保存的位置) //

    1.4K20

    SSH连接与自动化部署工具parami

    ('pk_path', password) # 需要口令的私钥 #key = paramiko.RSAKey(data=base64.decodestring('AAA...')) client...or list(str) 私钥文件或其列表 timeout-以秒为单位 allow_agent-为False时禁用连接到SSH代理 look_for_keys-为False时禁用在~/.ssh中搜索私钥文件...((hostname, port)) t.connect(username=username, password=password) sftp = paramiko.SFTPClient.from_transport...(中转,堡垒机)IP -H 指定目标主机,多个用“,”分割 -P 异步运行多主机任务 -R 指定角色,以角色来区分机组 -t 设备连接超时时间,秒 -T 远程主机命令执行超时时间,秒 -w 当命令执行失败...示例-Fabric部署Flask应用 示例1:它可以把当前的源代码上传至服务器安装到一个预先存在 的 virtual 环境: from fabric.api import * # 使用远程命令的用户名

    1.3K10

    Python 进行 SSH 操作,实现本地与服务器的链接,进行文件的上传和下载

    我本地和服务器的连接一直使用的是 Xshell 5,而在与服务器进行文件操作的时候使用的是 Xshell 推荐安装的一个工具 Xftp 5,然而,昨天自己想着从服务器下载备份好的的数据库文件到本地的时候发现这个文件传输工具居然过期不能用了...项目介绍 SSH 使用的库 首先需要介绍一个 Python 实现 SSH 连接的第三方库,名字叫做 paramiko,经过一个短暂的熟悉,我发现这个库基本可以实现 SSH 连接中的一些常用方法,具体使用可以去看一些教程或者官方文档...读取配置文件的信息,返回一个字典以备后续调用 使用 SSH 链接服务器,并且执行几个 shell 命令,返回需要下载的文件的绝对地址列表 连接 SFTP 批量下载文件到本地 源码解读 源码展示 # -*...SFTP 下载文件 下载文件的操作写在函数 sftp_test() 中,这个函数除了要传递登录服务器的4个基本参数外,还要传递2个参数,第一个服务器上面的文件的绝对地址,第二个是本地保存的文件的地址(...,由于端口接受的是一个 int 类型,而在配置中是字符串,所有需要转换一下才能使用,不然就会报错。

    1.5K30

    再见Xshell、Xftp!Python执行Linux命令、上传下载远程文件

    大家好,我是辰哥 相信大家应该都接触过Linux操作系统(Ubuntu、Centos等),那么在使用的Linux操作系统需要使用一些远程ssh工具,尤其是公网服务器。...这里用到的Python库是Paramiko 核心知识点(亮点): 1、Python连接远程Linux服务器 2、执行命令返回结果 3、上传文件到远程Linux服务器 4、从远程Linux下载文件 01...连接Linux服务器 # 获取Transport实例 tran = paramiko.Transport(('远程Linux的ip', 22)) # 连接SSH服务端,使用password tran.connect...3、从Linux服务器下载文件 辰哥在Linux服务器新建了一个文本文件:Python研究者.txt ,写入内容 ?...04 小结 本文讲解了Paramiko库,讲解ssh和sftp两大组件,设计的核心知识点(亮点): 1、Python连接远程Linux服务器 2、执行命令返回结果 3、上传文件到远程Linux服务器

    2.4K10

    代码远程执行主机命令-Paramiko入门

    什么是 「Paramiko」? Paramiko一个Python实现的SSHv2协议的库,可以用于在远程服务器上执行命令、上传和下载文件等操作。它使用了加密算法,可以提供安全的远程访问。...2 Paramiko 安装 使用效果图 demo类 可以看到查询需要用到的信息,主要是ip,用户名,密码,端口号 这些我们可以配置到yaml文件里面维护 3 使用yaml文件配置主机连接信息...创建一个工具类 import re import time import urllib from time import sleep # 定义一个类,表示一台远端linux主机 import paramiko...= paramiko.SFTPClient.from_transport(self.t) # # 将location.py 上传至服务器 /tmp/mytest.py #...sftp.put(local_path, target_path) # def download(self,remote_path,local_path): # sftp = paramiko.SFTPClient.from_transport

    84320
    领券