我们有一些 SFTP-Chroot 环境,其中我们仅允许使用 4096 位 RSA 密钥进行身份验证,并且我们只有来自用户的公钥部分。但我们有一个策略,即用户必须为其私钥部分设置密码。
有没有办法仅通过拥有公钥部分或者通过在 openssh-server 配置中设置某些内容来检查这是否属实(他们确实设置了密码)?
答案1
你不能(只有公钥)。用户可以更改或删除私钥的密码,而不会影响服务器。
有一个类似的问题:如何判断公共 SSH 密钥是否有密码
如果你正在实施双因素身份验证,也许你可以考虑使用 PAM 或自定义脚本。不过让它与某些 SFTP 客户端配合使用可能会很麻烦。