配置主机 A 密钥登录到主机 B

  • 在主机A生产密钥对:ssh-keygen -t rsa
    会在 .ssh 目录下产生密钥文件
  • 拷贝主机 A 的公钥到主机 B :scp id_rsa.pub username@ip:/path
  • 将主机 A 的公钥加到主机 B 的授权列表 ~/.ssh/authorized_keys
    • 若不存在,手动创建:cat id_rsa.pub >> authorized_keys
    • 亦可以 mv id_rsa.pub authorized_keys
  • authorized_keys 的权限必须是 600:chmod 600 authorized_keys
  • 确保配置密钥登录的用户拥有操作 .ssh 文件夹的权限:sudo chown -R youruser:yourusergroup ~/.ssh

关闭密码登录和开启免密(密钥)登录

  • 编辑 ssh 的配置文件 vim /etc/ssh/sshd_config ,找到如下行进行更改
# 启用密钥验证 (取消注释)
RSAAuthentication yes
# yes 改为 no
PasswordAuthentication no  
  • 保存退出后重启 ssh 服务
systemctl restart sshd.service

强烈建议不要断开全部的 ssh 连接,先测试配置是否成功
若是配置的公私钥不配对,因为密码已经进不去了,这个进不去那可就 GG 了
重启 ssh 服务不会断开已有连接