使用python自动化ssh命令。Obs公司。需要双重登录

2024-09-30 20:27:42 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,我的大学有一个集群,我想使用。但是,要访问它,我需要先登录到大学的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连接我以前也是这样。但是我得到以下错误(在评论中)

总之,有没有办法通过python在ssh中执行双重登录?你知道吗


Tags: brparamikodefconnectstdoutusernamelogin集群