我正在使用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
答案 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