配置基于密钥认证的 SSH

生成秘钥

  • 命令:ssh-keygen
    • 该命令会在/root/.rsa目录下生成公钥id_rsa.pub
    • 以及一个私钥id_rsa
  • 可选

    • 该命令第一次互动信息可以输入秘钥的存放地址
    • 该命令的第二次互动信息可以输入秘钥的密码
    • 重复执行该命令会覆盖之前的秘钥
    • 为现在的秘钥更新密码可以使用 ssh-keygen -p -f ~/.ssh/id_rsa

      发送私钥

  • 命令:ssh-copy-id user@address

    • 例如:ssh-copy-id root@192.168.138.13
    • 该命令会提示输入远程用户的密码
  • 没有上方命令时,可以使用下方的备选命令:
    • cat ~/.ssh/id_rsa.pub | ssh user@machine “mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys”

      连接

      此时使用ssh连接远程客户端将不需要使用密码