在多台服务器上使用不同的 id_rsa 文件,如何管理这些秘钥?

在 Linux 服务器上禁用密码登录,只允许 SSH 秘钥登录,显然可以避免大量的攻击风险。如果有多台服务器,同时有多个秘钥,应该如何管理和使用呢?

SSH 配置文件一般存储在 ~/.ssh/config 这个路径中,

SSH 配置文件路径

当你使用 ssh 命令连接服务器时,默认会从这个路径读取 config 信息和秘钥。

在客户端的 ~/.ssh 目录下创建或编辑 config 文件:

如果该目录下没有 config 文件,可以手动创建:

vim ~/.ssh/config

然后,添加每个服务器的配置,例如:

Host server1
    HostName server1.example.com
    User your_username
    Port 1234
    IdentityFile ~/.ssh/id_rsa_server1

Host server2
    HostName server2.example.com
    User your_username
    IdentityFile ~/.ssh/id_rsa_server2

请注意,IdentityFile 指定了用于连接到每个主机的私钥文件的路径。

确保私钥文件的权限正确:

私钥文件应该具有安全权限。通常,你可以使用以下命令:

chmod 600 ~/.ssh/id_rsa_server1
chmod 600 ~/.ssh/id_rsa_server2

测试连接:

使用 ssh 命令测试连接是否正常。例如:

ssh server1

如果一切设置正确,连接应该使用指定的私钥文件进行身份验证。

由于设置了 Host,所以连接时也不需要 IP 或者域名了,非常方便。

耕读君
耕读君

云时代的我们要学会“腾云驾雾”

文章: 188

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注