你好,我尝试过在线解决方案,在里面加入一个 2FA 系统。即使在我注销后,它仍然不需要 2FA,只要有 PEM 就可以登录,我不确定我做错了什么
这是我遵循的步骤 https://ubuntu.com/tutorials/configure-ssh-2fa#1-overview
答案1
1. 安装 PAM
$ sudo apt install libpam-google-authenticator
2. 生成代码
$ google-authenticator
选择您最喜欢的应用程序(Google Authenticator、Authy……)并添加屏幕上显示的(QR)码。
3.配置SSH
$ sudo nano /etc/pam.d/sshd
将以下行添加到文件顶部。
auth required pam_google_authenticator.so
通过注释掉以下行来禁用用户密码验证:
#@include common-auth
4.编辑 SSH 守护进程配置文件:
$ sudo nano /etc/ssh/sshd_config
并配置如下选项:
ChallengeResponseAuthentication yes
PasswordAuthentication no
PubkeyAuthentication yes
AuthenticationMethods publickey,keyboard-interactive
其次是:
$ sudo systemctl restart sshd && sudo systemctl restart ssh
5.尝试登录另一个 SSH 会话同时保持实际连接(in case something goes wrong so you can revert changes.)