我已经完全配置了一个 LDAP 服务器,它可以完美地跨我的多个节点对用户进行身份验证。
我想使用常见的双因素公钥和私钥来增加额外的安全性。
我遵循了以下指南:https://github.com/jirutka/ssh-ldap-pubkey
我添加了模式,我可以看到我的用户包含一个公钥作为他们的参数。
我可以运行该脚本并且它会返回用户的公钥。
问题是,每当我尝试 ssh 连接到我的机器时,它都不会要求输入私钥。我想知道我是否遗漏了什么?
正如指南所述,我已将以下内容添加到我的 sshd.conf:
AuthorizedKeysCommand /usr/bin/ssh-ldap-pubkey-wrapper
AuthorizedKeysCommandUser nobody
重启、重新启动,但我的服务器仍然没有提示输入私钥。我仍然能够仅使用用户/密码登录,但它应该拒绝我,因为我没有提供私钥。
我正在测试 centos 6 机器上运行,有人知道我的 PAM 文件中是否缺少了什么吗?
答案1
在 sshd.conf 中添加此行
RequiredAuthentications2 publickey,password
修复了 CentOS 6 上的问题。感谢 @gf_ 帮助我解决这个问题!