Python+paramiko实现绕过跳板机免密登录服务端

  前提,服务端和客户端已配置公钥、私钥,详情可参见: ssh-keygen生成公钥私钥

详见代码:

import paramiko


# 服务器信息
host = {"host": " ", "port":  , "username": " "}
private_key = paramiko.RSAKey.from_private_key_file('/root/.ssh/id_rsa')

class SSHConnection(object):

    def __init__(self, host_dict):
        self.host = host_dict['host']
        self.port = host_dict['port']
        self.username = host_dict['username']
        self.__k = None
        self.private_key = private_key


    def connect(self):
        transport = paramiko.Transport((self.host, self.port))
        transport.connect(username=self.username, pkey=self.private_key)
        self.__transport = transport

    def close(self):
        self.__transport.close()

    def __del__(self):
        self.close()

ssh = SSHConnection(host)
ssh.connect()
  

  

原文地址:https://www.cnblogs.com/jiahm/p/13471835.html