我目前禁用所有的SSH服务器上的密码authentication(今天的好主意!)。 我的一些服务器与其他人共享,我想强制他们使用带密码的ssh密钥。 是否有可能禁止sshloginssh密钥没有密码?
正如其他答案中所提到的,您无法在密钥上执行密码。 但是,要执行双因素authentication(您拥有的东西,密钥以及您知道的密码),您可以使用其他选项。
在较新版本的OpenSSH中,您可以在/etc/ssh/sshd_config设置RequiredAuthentications2 pubkey,password参数。 这将强制用户使用公钥和密码authentication,有效地给你双因素authentication。
不幸的是你不能这样做,因为它全部在客户端pipe理。 如果你使用putty / kitty或类似的东西,也许这是一个很好的时间来介绍人们到ssh-agent或者pageant。 使用此方法将密钥添加到代理时,密码只需要提供一次。
不,这是不可能的,因为它在SSH的客户端处理100%。