CentOS 7 生成 SSH 公钥私钥对及保存位置详解

admin
本文详解了在 CentOS 7 系统下生成 SSH 密钥对(公钥与私钥)的操作方法,主要介绍了使用 ssh-keygen 命令的步骤,并明确了密钥对的默认保存位置,即用户家目录下的 .ssh 文件夹(通常为 id_rsa 私钥和 id_rsa.pub 公钥),以便实现安全无密码登录。

在现代服务器管理中,使用 SSH 密钥对进行身份验证比传统的密码登录更加安全且便捷,在 CentOS 7 系统上,生成并配置 SSH 密钥对是提升服务器安全性的重要一步,本文将详细介绍如何在 CentOS 7 上生成密钥对,并明确告知您这些密钥文件保存在哪里。

生成 SSH 密钥对

您需要在您的本地电脑(客户端)或服务器上执行以下命令来生成 RSA 类型的密钥对。

使用 -t 指定算法(如 rsa),使用 -b 指定密钥长度(推荐 4096 位以获得更高的安全性):

CentOS 7 生成 SSH 公钥私钥对及保存位置详解

ssh-keygen -t rsa -b 4096

执行该命令后,系统会提示您输入一些信息,您可以直接按回车键使用默认设置,也可以设置一个强密码短语(Passphrase)来保护私钥。

密钥对保存在哪里?

这是许多新手最容易混淆的地方,生成的 SSH 密钥对保存在用户的主目录下的隐藏目录 .ssh 中。

具体路径和文件说明如下:

  1. 私钥文件

    • 文件名id_rsa
    • 路径/home/username/.ssh/id_rsa
    • 说明:这是您的私钥,必须严格保密,绝不能分享给任何人,包括技术支持人员。
  2. 公钥文件

    • 文件名id_rsa.pub
    • 路径/home/username/.ssh/id_rsa.pub
    • 说明:这是您的公钥,可以分享给任何人(例如上传到服务器),服务器使用它来验证您的身份。

配置与使用

生成密钥后,您需要将公钥复制到 CentOS 7 服务器上,以便实现免密登录。

使用 ssh-copy-id(推荐)

如果您安装了 openssh-clients,这是最简单的方法:

ssh-copy-id username@centos7-server-ip

系统会提示您输入服务器的密码,完成后,公钥就会被自动追加到服务器的 ~/.ssh/authorized_keys 文件中。

手动复制

如果您无法使用 ssh-copy-id,可以使用以下命令手动复制:

cat ~/.ssh/id_rsa.pub | ssh username@centos7-server-ip 'cat >> ~/.ssh/authorized_keys'

权限设置建议

为了确保安全,CentOS 7 对 .ssh 目录的权限有严格要求,请确保以下权限设置正确:

  • 私钥文件:权限应为 600(仅所有者可读写)。
  • 公钥文件:权限应为 644(所有者可读写,其他人可读)。
  • .ssh 目录:权限应为 700(仅所有者可访问)。

您可以使用以下命令修改权限:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa
chmod 644 ~/.ssh/id_rsa.pub

在 CentOS 7 上,SSH 密钥对默认保存在您登录用户的家目录下的 .ssh 文件夹中,分别是 id_rsa(私钥)和 id_rsa.pub(公钥),正确配置这些文件的位置和权限,您就能享受到更加安全、流畅的 SSH 免密登录体验。

文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码