CentOS系统公钥登录指南:一键设置与安全实践

需积分: 10 1 下载量 15 浏览量 更新于2024-08-30 收藏 644KB DOCX 举报
在 CentOS 系统中,实现公钥登录是一种安全且方便的远程访问方式,尤其适用于服务器管理。以下是关于在 CentOS 6 和 CentOS 7 系统上设置公钥登录的详细步骤: 1. **设置连接基础**: 首先,确保您的计算机上安装了 Xshell 这样的终端工具,它将用于与 CentOS 服务器进行交互。 2. **身份验证设置**: 身份验证是通过公钥加密的方式进行,这样每次登录时,服务器只会验证公钥,而不是传统的用户名和密码。这一步涉及到了密钥对的概念,即每台设备有一个私钥(仅本地保留)和一个对应的公开发布的公钥。 3. **生成公钥**: 使用 ssh-keygen 命令生成一对密钥,如 id_rsa_2048.pub。这个过程会提示你输入一个密码保护私钥,但公钥将被公开。确保妥善保管好私钥,它是安全的关键。 4. **上传公钥到服务器**: 将生成的公钥 id_rsa_2048.pub 文件复制到 Linux 服务器的 root 用户主目录下的 .ssh 目录下(/root/.ssh),例如使用 `cd /root/.ssh` 路径,然后创建或编辑 authorized_keys 文件(如果不存在的话,用 `touch authorized_keys` 创建)并添加公钥内容。 5. **权限管理**: 设置 authorized_keys 的权限为 600,以保护文件不被非法访问。使用 `chmod 600 authorized_keys` 命令完成此操作。 6. **启用公钥登录**: 在服务器的 sshd_config 配置文件中,启用 RSAAuthentication 和 PubkeyAuthentication,并指定 AuthorizedKeysFile 为 authorized_keys。关闭 PasswordAuthentication,以禁用密码登录,通过 `vi /etc/ssh/sshd_config` 打开编辑,然后保存并重启 sshd 服务,如 `service sshd restart`。 7. **共享公钥**: 如果需要与他人共享公钥以便他们能通过 Xshell 登录,应该导出私钥(而非公钥),然后由接收者在他们的 Xshell 中导入。直接分享公钥可能会导致 Xshell 导入时出现错误,因为私钥是加密的必要部分。 通过以上步骤,您已经成功地在 CentOS 系统上设置了公钥登录,大大提高了安全性同时简化了远程管理流程。请务必确保您的私钥安全,以保护服务器免受未经授权的访问。