If the computer that you are logging into isn’t hardened against brute-force
login attempts, you can enable rate-limiting for the authentication module.
By default, this limits attackers to no more than 3 login attempts every 30s.
Do you want to enable rate-limiting (y/n) y
是否限制 30 秒内只能尝试 3 次登录,我们选择yes以防止人有暴力破解。
完成以上步骤后,Google PAM 的所有配置工作就已经完成了。
配置OpenSSH支持MFA接下来,我们要配置 SSH 来使用 TOTP key,这需要告诉 SSH 使用 Google PAM 进行身份验证。
1. 在/etc/pam.d/sshd文件最后添加如下内容:
auth required pam_google_authenticator.so nullok最后的nullok是告诉 PAM 此种身份验证方式为可选,此时用户仍然可同时使用 SSH 密码和密钥的方式进行登录。当我们测试使用 OATH-TOTP key 能够正确无误登录时,便可将nullo删除以指明强制使用 MFA。
2. 接下来我们需要配置 SSH 支持此种方式的身份验证。编辑/etc/ssh/sshd_config配置文件,将其中的ChallengeResponseAuthentication配置为yes,再重启 SSH 服务:
sudo service ssh restart至此,我们的 SSH 已经可以使用 Google Authenticator 进行验证了,是不是非常不错。最后,为了保证服务器安全,建议大家开启 SSH 密钥 + MFA 双重验证的方式,放弃对 SSH 密码验证方式的使用。
编辑/etc/ssh/sshd_config配置文件:
PasswordAuthentication no UsePAM yes #下面增加 AuthenticationMethods publickey,keyboard-interactive重要:在配置过程中大家务必在测试好使用 Google Authenticator 可以登录 SSH 之后再停用 SSH 密码或密钥验证方式,否则导致无法连接就 Over 了。
下面关于SSH相关的文章您也可能喜欢,不妨参考下:
Ubuntu 14.04 下安装Samba 及SSH 服务端的方法
开启SSH服务让Android手机远程访问 Ubuntu 14.04