1,在服务器a上利用ssh-keygen命令生成公钥私钥对
2,将生成的公钥 远程 传输到B服务器的~/.ssh 文件夹下面
[root@flower1 .ssh]# scp id_rsa.pub root@10.170.125.14:~/.ssh
3,在B服务器上操作
# touch ~/.ssh/authorized_keys (如果已经存在这个文件, 跳过这条)
# chmod 600 ~/.ssh/authorized_keys (# 注意: 必须将~/.ssh/authorized_keys的权限改为600, 该文件用于保存ssh客户端生成的公钥,可以修改服务器的ssh服务端配置文件/etc/ssh/sshd_config来指定其他文件名)
# cat ~/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys (将id_rsa.pub的内容追加到 authorized_keys 中, 注意不要用 > ,否则会清空原有的内容,使其他人无法使用原有的密钥登录)
修改文件 vi /etc/ssh/sshd_config (去掉前面#号)
PubkeyAuthentication
yes
AuthorizedKeysFile .
ssh
/authorized_keys
4,重启sshd服务
systemctl restart sshd.service
systemctl status sshd.service #查看ssh服务的状态
#systemctl start sshd.service #开启ssh服务
#sytemctl enable sshd.service #ssh服务随开机启动,还有个disabled
#systemctl stop sshd.ervice #停止
5,验证
[root@flower1 .ssh]# ssh root@101.170.125.14
ssh 免密登陆成功