除非使用 sudo,否则我无法从我的计算机 (OS X) ssh 到我的 raspberry pi (ubuntu mate)。我正在使用公钥/私钥对进行身份验证。
适当的公钥被添加到树莓派上的authorized_users文件中。
我的.ssh 目录的权限是 700。我的密钥文件的权限是 600。
这是带有 -v 标志的 ssh 的输出:
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/username/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /Users/username/.ssh/id_dsa
debug1: No more authentication methods to try. Permission denied (publickey).
ls:
-rw------- 1 username staff 3326 May 18 23:24 id_rsa
-rw-r--r-- 1 username staff 752 May 18 23:24 id_rsa.pub
.ssh:
drwx------ 11 username staff 374 May 19 21:49 .ssh
答案1
你可能共享了 root 的 ssh 密钥,可能是因为sudo
你在执行 时执行了ssh-copy-id
。确保username
的公钥也在authorized_keys
目标上
答案2
这里似乎存在脱节。您一直说 authorized_users;其他人一直说 authorized_keys。用户的公钥放在用户主目录中的名为 .ssh/authorized_keys 的文件中,而不是 .ssh/authorized_users。由于 ssh 适用于 root,因此您可能需要查看 ~root/.ssh 的目录,并使 ~user_name/.ssh 的目录看起来相同 - 当然,除了密钥是该用户的密钥,而不是 root 的密钥。