没有可用的公钥支持的身份验证方法

没有可用的公钥支持的身份验证方法

我有学校项目服务器 - debian 8 jessie,并且我有基于 SSH 密钥的身份验证。我的问题是,我创建了名为 tester 的新用户,但他无法连接到服务器,并出现以下错误:

没有可用的公钥支持的身份验证方法

我尝试将测试人员的密钥更改为我自己的,然后尝试自己以测试人员身份进行连接,但没有成功。

我对此真的是新手,所以我不知道哪里出了问题。我很乐意接受任何建议。

我使用了这些命令

useradd -G users,sudo tester
passwd tester
mkdir /home/tester
mkdir /home/tester/.ssh
chown tester:tester /home/tester
chown tester:tester /home/tester/.ssh
chmod go-rx /home/tester
chmod go-rx /home/tester/.ssh
mv /home/marm04/authorized_keys /home/tester/.ssh
chown tester:tester /home/tester/.ssh/authorized_keys

在此处输入图片描述

答案1

我认为你“做错了”,这里有不止一个问题,所以让我们来解决它们。

  1. ~username/.ssh/authorized_keys 需要有一个可以作为该用户进行身份验证的密钥列表。因此,如果您和他都想以他的身份登录,这是可能的。您需要将你们的两个公钥都放在 authorized_keys 文件中 - 每行 1 个密钥。W当您使用密钥登录时,您仍然以用户名@ip 身份登录 (即他的用户名,而不是你的。

  2. 我注意到您将“marm04”密钥移至了他的帐户。假设您是 marm04,那是一个错误,您想要复制或 cat 它,因此,假设您已经在那里拥有他的密钥,要使用的命令将是 cat ~marm04/.ssh/authorized_keys >> ~tester/.ssh/authorized_keys

  3. 您还应该检查 /etc/ssh/sshd_config 并确保没有以“AllowUsers”开头的行,或者,如果有,您需要调整它以便他(也许是他的 IP,取决于其写法)可以登录,然后重新启动 SSHD。

  4. 您需要对权限的操作多加小心。看起来您已使目录可执行,并更改了其权限,但您尚未更改 authorized_keys 文件的权限。

答案2

我刚刚解决了这个问题。我检查了 /var/log/auth.log,发现了这一行

2016-12-08T00:35:40.869224+01:00 info auth sshd[1554]: Authentication refused: bad ownership or modes for file /home/tester

所以我运行了这个命令

chmod 755 /home/tester

现在它起作用了。这真是一个愚蠢的错误。我希望它能在未来帮助其他和我一样绝望的人。

相关内容