paramiko sftp使用ssh代理挂断了打开的会话

问题描述

我有这段代码应该通过ssh传输打开sftp会话。 ssh会话可以正常工作,就像我将命令发送到收到的答复完全找到的目标时一样。但是,如果我尝试通过相同的传输方式打开sftp会话,我的脚本将什么也不做,它会挂在那里。我试图用tshark捕获sftp流量,但似乎没有任何反应。有什么建议?预先感谢。


def ssh_connection(self)->'ssh connection with proxy':
    """This function calls paramiko module and uses SSHConfig and SSHClient
    to parse ssh configuration and to create a socket to the destination router
    respectively,passing through a jump host server CEM,using the proxy command"""
    UserDict = {0: ('pinko','pallino'),1: ('pink','pall'),2: (self.user,self.password)}
    while UserDict:
        credentials = UserDict.popitem()
        self.user = credentials[1][0]
        self.password = credentials[1][1]
        try:
            self.hostname = '100.17.31.219'
            self.host = self.conf.lookup(self.hostname)
            self.ssh.load_system_host_keys()
            self.ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            self.proxy = paramiko.ProxyCommand(self.host.get('proxycommand'))
            print("Connecting to router...%s" % self.hostname)
            self.ssh.connect(self.hostname,port=22,username=self.user,password=self.password,allow_agent=False,look_for_keys=False,sock=self.proxy,timeout=30)
            self.channel = self.ssh.invoke_shell()
            self.transport = self.ssh.get_transport()
            if self.transport:
                self.sftp = paramiko.SFTPClient.from_transport(self.transport)
                print("Connected;%s" % self.hostname)
                break
        except Exception as e:
            print(e)
        

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...