本人github
在 SSH 的密钥认证机制中,~/.ssh/authorized_keys
文件和 ~/.ssh/id_rsa.pub
文件扮演着不同但互补的角色。它们的关系和作用如下:
~/.ssh/authorized_keys
- 这个文件位于服务器端的用户的家目录中。
- 它包含了一系列被认为是“授权”的公钥。
- 当一个客户端尝试通过 SSH 连接到服务器时,服务器会检查客户端提供的公钥是否存在于
~/.ssh/authorized_keys
文件中。 - 如果客户端提供的公钥在这个文件中,则客户端被允许登录。
- 简而言之,
~/.ssh/authorized_keys
文件定义了哪些公钥是被服务器接受的。
~/.ssh/id_rsa.pub
- 这个文件通常位于客户端的用户的家目录中。
- 它包含了客户端用户的 SSH 公钥。
- 这个公钥是由客户端用户生成的一对密钥中的公开部分(另一部分是私钥
~/.ssh/id_rsa
)。 - 公钥用于在 SSH 连接过程中与私钥相配对,以证明客户端用户的身份。
- 为了能够通过 SSH 密钥认证登录到服务器,客户端用户需要将这个公钥添加到服务器上的
~/.ssh/authorized_keys
文件中。
二者的关系
- 客户端生成的公钥(
id_rsa.pub
)需要被添加到服务器的authorized_keys
文件中,以便服务器在客户端尝试建立连接时能够识别和验证客户端的身份。 - 这种机制提供了一种更安全的替代密码登录的方法,因为密钥对的加密强度通常比传统密码高得多。
总结
~/.ssh/id_rsa.pub
是客户端生成的公钥。~/.ssh/authorized_keys
是服务器用来存储允许登录的公钥列表的文件。- 通过将
id_rsa.pub
中的公钥内容添加到服务器的authorized_keys
文件,客户端用户可以通过 SSH 密钥认证登录到服务器。