一、前言

在Linux系统中,SSH(Secure Shell)是一种常用的远程登录和文件传输协议。传统的SSH登录需要输入用户密码,既不方便也不安全。为了解决这个问题,我们可以部署SSH的公钥认证,即免密登录。本文将详细介绍如何在CentOS上批量部署用户免密服务器。

二、准备环境

1台CentOS 7.x的服务器(本文使用CentOS 7.6) 多个CentOS客户端(根据实际需求确定数量)

三、步骤详解

安装OpenSSH服务器

在CentOS服务器上安装OpenSSH服务器,使用以下命令:

sudo yum install openssh-server 生成SSH密钥对

在每个需要免密登录的客户端上生成SSH密钥对。首先,打开终端并输入以下命令:

#ssh-keygen -t rsa

然后,按照提示输入密钥保存路径和密码。这一步会在客户端上生成一对公钥和私钥,分别是/.ssh/id_rsa和/.ssh/id_rsa.pub。

复制客户端公钥到服务器

将客户端的公钥复制到服务器上,让服务器识别该公钥。使用以下命令:

#ssh-copy-id username@server_ip

这里的username是你在服务器上的用户名,server_ip是服务器的IP地址。输入命令后,需要输入客户端的密码和服务器上的密码。

配置SSH服务器

在服务器上配置SSH,使其接受来自客户端的公钥认证。打开/etc/ssh/sshd_config文件:

#sudo vi /etc/ssh/sshd_config

然后,找到以下几行并修改:

RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys

确保这些选项都已开启或设置正确。保存并关闭文件。

重启SSH服务

完成上述步骤后,重启SSH服务以使更改生效:

#sudo systemctl restart sshd 测试免密登录

现在,你应该可以从客户端无密码登录到服务器了。试试以下命令:

#ssh username@server_ip

这里的username和server_ip如前面所述。如果一切顺利,你应该可以直接登录到服务器,不再需要输入密码。

四、总结与注意事项:

在生成SSH密钥对时,务必选择RSA算法,并且不要设置过于简单的密码。否则,安全性可能会降低。 在复制公钥时,务必确认服务器的公钥已经设置,否则客户端无法连接到服务器。否则,新的客户端无法使用免密登录。 定期更换密钥对也是一个好的安全习惯,以防止密钥泄露带来的安全风险。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: centos服务器