通过网关使用 SSH 密钥在网关上进行 SSH

通过网关使用 SSH 密钥在网关上进行 SSH

我想将我公司的服务器设置为所有客户服务器的网关。这样与我一起工作的人就可以简单地“代理通过”,而无需在他们的机器上设置 SSH 密钥。即

[My local box] -> [Our Company Server (with SSH keys)] -> [Client's server]

到目前为止,我的 .ssh/config 中有这个

Host client-server
    User myclient
    ProxyCommand ssh -o Compression=no gateway netcat -w 3 %h %p
    Compression yes

host gateway
    HostName company-server
    User me
    Compression yes

但是这仍然要求输入 myclient@client-server 的密码。我希望它在网关上使用 ssh 密钥。有什么方法可以实现吗?

答案1

好吧,您可以直接从.ssh/authorized_keys文件启动另一个 ssh 会话:

command="/usr/bin/ssh -i ~/.ssh/id_ecdsa_<user> <server>",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ecdsa-sha2-nistp256 <key-data>

您仍然需要创建本地密钥文件并将其添加到目标用户/服务器.ssh/authorized_keys

相关内容