SSH失败的公钥身份验证


16

我有一台服务器,并且希望能够与两个不同的用户进行SSH通讯。我已经为第一个用户设置了公共密钥身份验证,并且工作正常,但是,我无法使用第二个用户登录。该authorized_keys文件之间的区别在于,第二个用户有两个密钥(身份验证时它们都失败)。.ssh目录和授权密钥文件都具有755权限。ssh客户端发送我要进行身份验证的密钥。可能是什么问题呢?


请显示两个用户的命令以及用于SSH进入服务器的第二个用户的不同键。
lord.garbage 2014年

很高兴您的情况能奏效。除了重置密码。如果您已pam_tally锁定了帐户,我建议您也看看。pam_tally2 --user userb --reset这将重置帐户的失败计数并允许您登录。
Tman

Answers:


18

首先,.ssh目录应具有700个权限,authorized_keys文件应具有600个权限。

chmod 700 .ssh
chmod 600 .ssh/authorized_keys

如果您使用userB的root身份创建了文件,请执行以下操作:

chown -R userb:userb .ssh

如果问题仍然存在,请在您的问题中发布ssh日志文件的输出,然后我将更新答案。

对于Debian:

less /var/log/auth

对于Redhat:

less /var/log/secure

chown -R userb:userb .sshuserb用您当前的用户替换。我也是chown -R userb:userb .ssh/authorized_keys 为了以防万一。真的很有帮助的答案!!
IvRRimUm

5

我在以下位置找到了此消息/var/log/auth.log

Oct 22 13:27:58 hagyma sshd[27420]: User userb not allowed because account is locked

我已使用设置了userb的密码sudo passwd userb,并且该密码已解锁该帐户。


这是为作为系统帐户创建的备份用户的解决方案
Stuart Cardall,

..现在您有两个问题。希望密码是安全的。
tedder42

3

对我而言,它sshd是忽略不计的,~/.ssh/authorized_keys因为/home分区是以不寻常的方式安装的。我尝试了所有事情,设置了正确的权限,并且只有在进行以下修改后才能起作用sshd_config

StrictModes no

这对我在CentOS 7上有效。使用公共密钥的root登录正在工作,但对于/ home上的用户却不起作用
itsafire
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.