是否可以设置一个 Linux 机器,在提示用户输入本地帐户凭据之前,首先要求输入有效的密钥文件?我们的设置是,我们必须在一台机器上打开 ssh 以连接到互联网,但只有大约 2 个人需要 ssh 进入它。我们希望尽可能严密地锁定这个坏家伙。我们已经在实施通常的防火墙、拒绝主机等,但如果可能的话,我也想加入它。欢迎所有回复!
答案1
如果您的 SSH 密钥已经有密码(应该有),那么您已经在进行双因素了,而且在我看来,除了让用户恼火之外,将本地帐户密码添加到该过程中不会给您带来太多好处。
如果您只想允许这两个用户通过 SSH 登录,则可以使用 sshd_config 中的 AllowGroups 和/或 AllowUsers 配置功能。
答案2
检查sshd_config 的手册页看看有哪些可用的选项。HostBasedAuthentication 看起来很有希望。
如果您找不到所需的内容(即使可以找到),您可以通过要求使用 sudo 来锁定可以在机器上执行的操作 - 可以将其配置为需要密码、记录完成的所有操作,并且恕我直言,至少应该在您使用的任何 Linux 服务器上将其设置为默认设置。
当然,请参阅 sudo 和 sudoers 的手册页,但也有一个关于我最喜欢的关于 Linux 服务器安全的页面
答案3
据我发现,商业 SSH2 服务器,现在 Tectia SSH 服务器支持RequiredAuthentications
配置选项,可以满足您的需要。