SSH ProxyJump 与跳转主机上的密钥

Phi*_*ppe 5 ssh

我正在尝试通过跳转主机连接到服务器。我通常通过首先登录跳转主机并使用存放在那里的密钥登录服务器来执行此操作。代理转发被禁用到跳转主机。我找到了一个有效的速记:

ssh -t jump ssh server
Run Code Online (Sandbox Code Playgroud)

但我想在 .ssh/config 中使用 ProxyJump。

每当我添加指令时,它似乎都在尝试使用客户端上的密钥而不是跳转主机上的密钥登录服务器。我怎样才能改变它?

Jak*_*uje 9

这就是 ProxyJump 的工作原理 - 它将您记录到第一台主机,启动 IO 转发,然后使用本地计算机中的凭据将您记录到第二台主机。这是更安全的方法,因为您的凭据永远不会离开您的计算机,代理也不会转发套接字。

将密钥从跳转盒移至您的计算机,或在第二台主机上设置身份验证以接受您的本地凭据/密钥。

没有简单的方法可以解决这个问题,因为 openssh 开发人员对推广不良的安全实践不感兴趣。

  • @MaxMalysh因为跳转主机上的密钥无法以任何方式受到保护(除非它们存储在加密硬件中)。而且因为如果您这样做,则跳转盒后面没有任何审计跟踪 - 所有连接都将使用来自同一主机的相同密钥。您可能可以尝试关联来自不同主机的日志来进行一些猜测,但它很脆弱。如果您想轻松更改密钥,请使用证书、某些 IdM 解决方案为您处理密钥,或者至少使用 AuthorizedKeysCommand 从集中位置提取密钥。 (2认同)