首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >python paramiko SSHException:通道关闭

python paramiko SSHException:通道关闭
EN

Stack Overflow用户
提问于 2015-02-04 17:04:50
回答 3查看 6.7K关注 0票数 3

我正在尝试建立到远程ubuntu机器的sftp连接。我能够建立ssh connection.but,它在open_sftp()抛出了一个异常。

import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=hostname,port=port,username=username,password=password)
sftp = ssh.open_sftp()

paramiko.SSHException:通道关闭

任何人都可以提前帮助me.thanks。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-02-04 17:10:49

上一次我在Paramiko中使用SFTP时,我也遇到了一些问题。我在网上搜索了一下,发现了这个工具:https://github.com/jbardin/scp.py

要使用它:

from scp import SCPClient
import paramiko

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname=hostname,port=port,username=username,password=password)

scpclient = SCPClient(ssh.get_transport(), socket_timeout=15.0)
scpclient.put("my_local_path", "my_remote_path")
票数 3
EN

Stack Overflow用户

发布于 2017-12-21 17:55:58

试试这个:

vim /etc/ssh/sshd_config

取消对此行的注释:

# Subsystem     sftp    /usr/libexec/openssh/sftp-server

祝好运!

票数 1
EN

Stack Overflow用户

发布于 2018-06-13 05:21:51

在Ubuntu以外的远程操作系统上,yong's solution中列出的注释行可能不存在。在这种情况下,您可以通过将行添加到文件中来修复该问题,并将路径修改为指向远程系统的sftp-server的正确位置。

在QNX上,我能够通过修改/etc/ssh/sshd_config文件并在行中添加以下内容来解决此问题:

Subsystem     sftp    /usr/libexec/sftp-server

尽管与文件的其余部分相比,该行的格式似乎不合时宜,但它仍然被证明是一个成功的解决方案,因为我能够成功地从SSH客户端对象打开一个SFTP客户端,而不会生成SSHException。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28317347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档