所以,我的大学有一个我想要使用的集群。但是,要访问它,我需要首先登录大学的ssh服务器,然后通过它再次使用ssh登录集群。所以,我的代码看起来像这样:
def login():
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('cupido.iqm.unicamp.br', port=22, username='gabriel', password='*********')
其中,cupido.iqm.unicamp.br是我首先需要访问的主机才能通过ssh登录集群。
这很好用。所以我尝试使用以下函数登录集群:
def kahuna():
login()
ssh.connect('kahuna.iqm.unicamp.br', username='gabrielcesar', password='*********')
stdin, stdout, stderr = ssh.exec_command('ls')
output=stdout.readlines()
print '\n'.join(output)
在这里它变得十分可爱。对我来说,首先使用上一个函数登录然后再次使用ssh.connect就像我之前一样。但是我收到以下错误(在评论中)
总之,有没有办法在ssh中通过python执行双重登录?