如何重用 ssh 私钥?

如何重用 ssh 私钥?

我可以使用 ssh 连接到 server1 和 server2。是否可以从 server2 连接到 server1,而无需从本地计算机将我的私钥复制到 server2,并与 server2 打开会话?

答案1

是的,当您在本地工作站上运行 SSH 身份验证代理,然后启用身份验证代理连接的转发时。

这样做并不完全安全。

摘自手册(man ssh):

-A 启用身份验证代理连接的转发。 这也可以在配置文件中按主机指定。

应谨慎启用代理转发。能够绕过远程主机上的文件权限(对于代理的 UNIX 域套接字)的用户可以通过转发的连接访问本地代理。攻击者无法从代理获取密钥材料,但他们可以对密钥执行操作,使他们能够使用加载到代理中的身份进行身份验证。

服务器管理员还可以使用AllowAgentForwarding nosshd_config 中的选项禁用代理转发。

答案2

您可以配置 ssh 代理和代理转发来执行此操作。

答案3

您可以使用 ssh 中的 ProxyJump 命令来实现这一点:

$ ssh user1@server1 -J user2@server2 

请注意,代理转发不建议这会给你带来一些安全问题。

相关内容