增强 SSH 登录安全性的一种方法是使用双因素身份验证 (2FA)。双重身份验证为您的服务器增加了一层额外的安全性。一般来说,您只需要您的用户名和密码即可登录您的服务器,但在应用双重身份验证后,您还需要一个身份验证码以及用户名和密码。这将显着提高服务器的安全性。
在 Ubuntu 20.04 LTS Focal Fossa 上设置两因素身份验证
apt
步骤 1. 首先,通过在终端中运行以下命令,确保所有系统包都是最新的。
sudo apt update
sudo apt upgrade
步骤 2. 安装 Google Authenticator PAM 模块。
现在运行以下命令从默认的 Ubuntu 软件包存储库安装 Google Authenticator:
sudo apt install libpam-google-authenticator
步骤 3. 配置 SSH。
以下命令将打开验证器配置文件:
nano /etc/pam.d/sshd
添加以下行:
auth required pam_google_authenticator.so
保存并关闭文件,然后sshd
使用以下命令重新启动守护程序:
sudo systemctl restart sshd
接下来,sshd_config
使用以下命令修改文件:
sudo nano /etc/ssh/sshd_config
找到 for 的行ChallengeResponseAuthentication
并将其值设置为 yes:
ChallengeResponseAuthentication yes
保存并关闭文件,然后重新启动sshd
服务:
sudo systemctl restart sshd
步骤 4. 生成 Google Authenticator QR 码。
现在我们使用以下命令运行 Google Authenticator:
google-authenticator
此命令的结果将引导您完成几个问题。用 回答每个问题y
。在回答之前,请通过截图复制二维码或按照谷歌网址获取更高质量的二维码。稍后您将需要此代码在您的移动设备上设置 Google 身份验证器。
在您的移动设备上,打开 Google Authenticator 应用程序,然后选择+以添加新帐户。然后,选择扫描二维码,可以扫描之前生成的二维码。扫描 QR 码将显示 Linux 虚拟机 (VM) 名称、用户帐户以及每 30 秒更改一次的唯一 TOTP 代码。
步骤 5. 测试两因素身份验证。
成功配置多因素身份验证后。是时候连接它并测试它了。现在打开您的终端并通过 SSH 登录到您的服务器,如下所示:
ssh root@ssh-your-server-ip
和以前一样,此会话会提示您输入管理员密码凭证。如果工作正常,它还会要求您提供验证码,该验证码与您在 Google Authenticator 应用程序中看到的TOTP 码相匹配。
感谢您使用本教程在 Ubuntu 20.04 LTS Focal Fossa 系统上设置双重身份验证。如需更多帮助或有用信息,我们建议您查看Ubuntu 官方网站。