安装 Google Authenticator 双因素验证应用程序和 PAM 模块:
sudo yum install epel-release # 安装 EPEL 源,CentOS 7 默认没有 epel 库
sudo yum install google-authenticator libpam-google-authenticator # 安装谷歌双因素验证相关软件
修改 SSH 配置文件 /etc/ssh/sshd_config,启用 PAM 身份验证:
sudo sed -i 's/ChallengeResponseAuthentication no/ChallengeResponseAuthentication yes/g' /etc/ssh/sshd_config
sudo sed -i 's/UsePAM no/UsePAM yes/g' /etc/ssh/sshd_config
sudo sed -i 's/#AuthenticationMethods none/AuthenticationMethods publickey,keyboard-interactive/g' /etc/ssh/sshd_config
重启 SSH 服务:
sudo systemctl restart sshd
生成谷歌双因素验证密钥:
google-authenticator
接下来会有一系列关于双因素身份验证的设置提示,可以按照自己的需求进行选择。


将谷歌双因素验证密钥添加到 SSH 用户的账户中: echo "auth required pam_google_authenticator.so" | sudo tee --append /etc/pam.d/sshd #tee --append 将配置追加至文件末尾不覆盖原有数据 重启 SSH 服务: sudo systemctl restart sshd 现在,当你尝试通过 SSH 登录时,系统将提示要输入谷歌身份验证器中生成的验证码,完成验证后即可登录成功。需修改认证方式


关闭验证:
将配置文件中配置修改回去,后重启sshd 服务即可
/etc/ssh/sshd_config
/etc/pam.d/sshd
浙公网安备 33010602011771号