我想要配置sshd
以要求连接使用密钥和密码进行身份验证。
我还没有考虑使用 PAM 或其他外部身份验证方法,但我目前的猜测(基于)sshd_config(5)
这是不可能的。请证明我错了,好吗?
答案1
如果您使用的是 openssh,我认为您无法做到这一点。还有其他 SSH2 守护进程允许扩展的 SSH2 指令,为您提供名为“RequiredAuthentications”和“AllowedAuthentications”的指令;两者都是用逗号分隔的列表。您可以在以下位置看到一个漂亮的兼容性图表:
http://hell.org.ua/Docs/oreilly/tcpip2/ssh/ch05_05.htm
如果您有此要求,则应更改 ssh 守护程序。配置如下:
AllowedAuthentications password,publickey
RequiredAuthentications password,publickey
干杯
答案2
如果您创建的证书上有密码,那么当您使用证书认证登录时,它将要求您输入该密码。
答案3
http://novosial.org/openssh/publickey-auth/
特别注意“密钥生成”以使用密码生成密钥,以及“密钥分发”以使用受密码保护的密钥登录到给定的服务器