温馨提示×

centos如何配置ssh无密码登录

小樊
56
2025-06-14 05:20:26
栏目: 智能运维

在CentOS系统中配置SSH无密码登录,可以通过生成SSH密钥对并将其复制到目标服务器来实现。以下是详细步骤:

1. 生成SSH密钥对

首先,在本地机器上生成SSH密钥对。打开终端并运行以下命令:

ssh-keygen -t rsa

系统会提示你输入文件保存位置和名称,默认情况下会保存在~/.ssh/id_rsa(私钥)和~/.ssh/id_rsa.pub(公钥)。你可以直接按回车键使用默认路径。

2. 将公钥复制到目标服务器

接下来,将生成的公钥复制到目标服务器的~/.ssh/authorized_keys文件中。可以使用ssh-copy-id命令来简化这个过程:

ssh-copy-id user@remote_host

其中,user是目标服务器上的用户名,remote_host是目标服务器的IP地址或主机名。系统会提示你输入目标服务器用户的密码。

3. 验证无密码登录

完成上述步骤后,尝试从本地机器通过SSH登录到目标服务器:

ssh user@remote_host

如果一切配置正确,你应该能够无需输入密码即可登录。

4. 配置SSH服务(可选)

为了确保安全性,可以进一步配置SSH服务。编辑/etc/ssh/sshd_config文件:

sudo vi /etc/ssh/sshd_config

确保以下配置项正确设置:

  • PubkeyAuthentication yes:启用公钥认证。
  • PasswordAuthentication no:禁用密码认证(可选,但推荐)。
  • PermitRootLogin no:禁止root用户直接登录(可选,但推荐)。

保存并退出编辑器后,重启SSH服务:

sudo systemctl restart sshd

5. 防火墙配置(可选)

如果目标服务器启用了防火墙,确保允许SSH连接:

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

通过以上步骤,你就可以在CentOS系统上配置SSH无密码登录了。

0