如何设置SSH以使用双因素身份验证

安全外壳(SSH)是一种广泛用于从一台计算机到另一台计算机的安全远程登录的协议,它提供了强大的加密功能以防止未经授权的访问。

然而,随着网络威胁的日益复杂,仅仅依靠传统的基于密码的身份验证可能会使系统容易受到暴力攻击和密码盗窃。这就是双因素身份验证(2FA)发挥作用的地方。

它不仅需要密码(你知道的东西),还需要第二个因素,通常是你拥有的东西(比如移动设备)或你身上的东西(就像指纹),从而增加了额外的安全层。

将2FA与SSH集成可显著降低未经授权访问您的系统的风险,即使密码被泄露也是如此。那么,让我们向您展示如何做到这一点。

步骤1:在手机上安装2FA Authenticator应用程序

首先,您必须在移动设备上安装2FA验证器应用程序,才能使用SSH进行双因素身份验证。此应用程序生成时间敏感的一次性使用代码,这些代码是身份验证过程中的第二个因素。

此类应用程序的流行选择包括Google Authenticator或Microsoft Authenticator。它们适用于Android和iOS设备,可以从各自的应用商店下载。

  • Android版谷歌验证器
  • iOS版谷歌验证器
  • 适用于Android的Microsoft Authenticator
  • 适用于iOS的Microsoft Authenticator

对于本指南,我们将使用Google Authenticator应用程序。将其预装在您的移动设备上很重要,因为在第3步中,我们将在与SSH服务器的2FA初始设置过程中使用它。

步骤2:安装Google的PAM验证器模块

Google Authenticator是一种基于软件的身份验证工具,使用基于时间的一次性密码(TOTP)算法和基于HMAC的一次性密码算法实现双因素身份验证(2FA)服务,用于验证软件应用程序的用户。

要使您的Linux系统为此做好准备,您必须安装名为“
libpam谷歌验证器

谷歌验证器
,”取决于您的分销。但是这个包裹有什么功能?

简而言之,它为Linux提供了一个软件模块,将Google Authenticator集成到可插拔身份验证模块(PAM)系统中。PAM是一个框架,用于将多个低级身份验证方案集成到高级API中,允许在需要用户验证的程序中实现各种身份验证方法。

Ubuntu/Debian

Ubuntu、Debian和其他基于它们的发行版,如Linux Mint或Pop_操作系统,可以使用下面的apt命令安装Google Authenticator:

sudo apt安装libpam谷歌验证器

Rocky Linux/AlmaLinux

对于Rocky和Alma等企业Linux发行版,Google Authenticator可通过EPEL存储库获得。因此,您必须首先将其添加到您的系统中(如果您还没有),然后安装Google Authenticator本身。

sudodnf安装epel版本
sudodnf安装谷歌验证器

Fedora

Fedora用户可以在官方分发库中找到Google Authenticator。要安装它,请执行以下命令:

sudodnf安装谷歌验证器

Arch Linux

Google Authenticator可在发行版针对Arch和基于Arch的衍生品的回购中使用。要安装它,请运行:

sudo pacman-S libpam谷歌验证器

步骤3:配置Google Authenticator

成功安装Google Authenticator后,我们现在准备对其进行配置。要进行配置,请打开终端并执行以下命令。

谷歌验证器