使用python paramiko进行SSH密钥转发

时间:2014-05-14 23:03:57

标签: python linux ssh paramiko ssh-agent

我们目前在桌面上运行一个脚本,该脚本使用paramiko来ssh到远程linux主机。一旦我们在远程linux主机上,我们执行另一个命令来登录另一台远程机器。我们想要做的是从paramiko将密钥传递给远程服务器,以便我们可以再次使用它们ssh到另一个远程主机。

这将是linux中'ssh -A remotehost.com'的等效功能。

1 个答案:

答案 0 :(得分:2)

您可以使用AgentRequestHandler在paramiko中为会话启用SSH代理转发。为此,请使用会话paramiko.agent.AgentRequestHandler(s)致电s。例如:

client = paramiko.client.SSHClient()
client.connect(host, port, username)
s = client.get_transport().open_session()
paramiko.agent.AgentRequestHandler(s)

有关详细信息和代码,请参阅this post