sshd授权的密钥命令,不验证用户

时间:2016-10-26 09:23:27

标签: authentication ssh ldap rhel7

我正在使用Simple AD对RHEL 7.2服务器上的SSH用户进行身份验证。我修改了AD上的模式,以包含sshPublicKey和ldapPublicKey的LDAP参数,并为我的用户将公钥导入AD。

我可以使用密码登录验证AD罚款。我可以使用以下命令从AD返回SSH密钥

/usr/bin/sss_ssh_authorizedkeys user@domain.example.com

我甚至可以手动将返回的密钥复制到/home/user@domain.example.com/.ssh/authorized_keys中,并且可以完全登录。

然而,当我将以下内容添加到sshd_config并重新启动sshd时,我无法进行身份验证(只是获得了permssion拒绝)

AuthorizedKeysCommand /usr/bin/sss_ssh_authorizedkeys
AuthorizedKeysCommandUser root

总而言之,我可以使用passowrd对AD进行身份验证,我可以从AD中返回公钥(并在我将其手动复制到authorized_keys时对密钥进行身份验证)但是我无法让它工作使用sshd的AuthorizedKeysCommand

1 个答案:

答案 0 :(得分:0)

原来在AuthorizedKeysCommand文件后面只有一些额外的空格。通过使用debug启动sshd注意到它:

systemctl stop sshd
/usr/sbin/sshd -d

我在尝试ssh连接时看到了:

Could not stat AuthorizedKeysCommand "/usr/bin/sss_ssh_authorizedkeys  ": No such file or directory