使用pysftp通过跳转服务器连接

Posted

技术标签:

【中文标题】使用pysftp通过跳转服务器连接【英文标题】:Using pysftp to connect via jump server 【发布时间】:2021-12-24 22:35:31 【问题描述】:

我正在尝试通过 pysftp 将文件上传到我的家庭网络。我的本地设备通过 WireGuard 连接到 VPS。

我可以使用ssh跳转连接到本地设备

ssh -J user@VPS user@localdevice

pysftp 有什么方法可以做同样的事情吗?

【问题讨论】:

【参考方案1】:

虽然也可以使用 pysftp 通过跳转服务器进行连接,但它对于此类技术任务来说太高级了。而 pysftp 似乎也是一个死气沉沉的项目。见pysftp vs. Paramiko。

直接使用 Paramiko(pysftp 只是 Paramiko 之上的一个包装器)。见Nested SSH using Python Paramiko

【讨论】:

【参考方案2】:

类似的东西

import pysftp

with pysftp.Connection('hostname', username='me', password='secret') as sftp:

    with sftp.cd('/allcode'):           # temporarily chdir to allcode
        sftp.put('/pycode/filename')    # upload file to allcode/pycode on remote
        sftp.get('remote_file')         # get a remote file

https://www.tutorialspoint.com/python_network_programming/python_sftp.htm

【讨论】:

这允许我连接到 VPS。但是如何输入跳跃的目标呢?

以上是关于使用pysftp通过跳转服务器连接的主要内容,如果未能解决你的问题,请参考以下文章

使用私钥通过 pysftp 连接到 SFTP 服务器时“找不到主机 ***** 的主机密钥”

使用私钥连接到服务器时出现pysftp AuthenticationException

AWS Glue 可以通过 SFTP 连接到远程服务器吗?

gaierror: [Errno -2] 名称或服务未知| pysftp

pysftp 身份验证超时

使用 pysftp 连接到 SFTP 服务器时出现“加载主机密钥失败”警告