首先,安装好 google-authenticator
,如下:
sudo apt update && sudo apt install -y libpam-google-authenticator
安装好后,输入:google-authenticator
,将输出二维码及 secret-key 的信息以及几个紧急验证码。
在移动端或相关设备上安装好 google 身份验证器 app,扫描二维码即可。同时,请备份好此二维码及相关信息,因为移动端上的 app 无法进行备份。最好是将其备份在 1password 或者 MacPass 等相关密码保存软件上。
下面,开始配置 SSH。
sudo vim /etc/ssh/sshd_config
找到下面两行,并将它们的值改为 yes
(一般在 84 行和 61 行,在 vim
上跳转到某行,可先按具体行数,在按 G
,注意是大写)
UsePAM yes
ChallengeResponseAuthentication yes
在文件末尾(先按$
,再按G
)加上
AuthenticationMethods publickey,keyboard-interactive
保存退出(按Esc
,再输入wq
,回车确认)。
下面,给 PAM 添加规则。
sudo vim /etc/pam.d/sshd
在文件开头加上
auth sufficient pam_google_authenticator.so
最后,重启 SSH
sudo systemctl restart ssh
之后,另开一个窗口使用 SSH 进行连接测试,千万别把这个窗口关了,不然万一有问题,就会连不上,很麻烦。