如何使用密码生成器进行远程登录身份验证?

Modified on: Sat, 09 Jun 2018 21:05:23 +0800

我想通过添加另一个因素来强化SSH登录的身份验证:密码生成器设备或手机上的密码生成应用程序。默认设置中唯一明显的选项是固定密码和密钥对。我怎么能这样做?

(如果我使用密码加密码生成器,则提供双因素身份验证(2FA):密码是“我所知道的”,密码是“我拥有的”。)

最佳答案

使用Google提供的工具Google身份验证器

  1. 安装libpam-google-authenticator


    • 或只是sudo apt-get install libpam-google-authenticator
  2. 编辑/etc/pam.d/sshd以包含该模块:


    • sudoedit /etc/pam.d/sshd
    • 然后将此行包含在文件顶部并保存:

      auth required pam_google_authenticator.so
      
  3. 编辑SSH配置文件以启用挑战:


    • sudoedit /etc/ssh/sshd_config然后更改响应身份验证:

      ChallengeResponseAuthentication no 
      

      ChallengeResponseAuthentication yes
      

      然后保存文件。

  4. sudo restart ssh重启SSH

  5. 运行google-authenticator


    • 这将为您提供密钥,验证码和紧急刮刮码。它还会问你一些限速问题。
  6. 醇>

    移动应用程序:

    您需要其中一个在其他设备上接收身份验证代码。

相关且有用:

请注意,将密码与一次性密码组合使用是双因素身份验证:它将“您知道的”(密码)与“您拥有的”(密码生成器设备)结合在一起。另一方面,如果将单次使用密码与SSH密钥对组合在一起,那就是“你拥有什么”。当两个身份验证因素属于同一类型时,您没有双因素身份验证;这有时被称为“一个半因素身份验证”。


相关问答

添加新评论