执行 ssh 时密钥被拒绝

执行 ssh 时密钥被拒绝

我有 /root/.ssh一个文件夹,authorized_keys里面有包含客户端公钥的文件。root 可以使用 ssh 无需密码即可正常登录。

如果我使用其他用户登录,系统将拒绝密钥并要求输入密码。

如何为简单用户设置 ssh 密钥登录?

答案1

您需要小心权限:

  1. 创造~/.ssh

    $ mkdir ~/.ssh
    
  2. 创造~/.ssh/authorized_keys

    $ touch ~/.ssh/authorized_keys
    
  3. 确保您拥有正确的权限:

    • 服务器上的主目录不应被其他人写入:

      $ chmod go-w ~
      
    • 服务器上的 SSH 文件夹需要 700 权限:

      chmod 700 ~/.ssh
      
    • Authorized_keys文件需要644权限:

      chmod 644 ~/.ssh/authorized_keys
      
  4. 将您的密钥添加到~/.ssh/authorized_keys。您可以手动添加,也可以使用

    $ ssh-copy-id user@host
    

参考:

[1]https://superuser.com/questions/215504/permissions-on-private-key-in-ssh-folder

[2]如何将 SSH 密钥添加到 authorized_keys 文件?

相关内容