如何在Linux平台下搭建双因子验证系统?

译文
系统 Linux
双因子验证应该是一项必用技术。本文作者介绍了为Linux台式机和服务器添加这个安全层的新方法。

【51CTO.com快译】双因子验证应该是一项必用技术。本文作者介绍了为Linux台式机和服务器添加这个安全层的新方法。

 

如何在Linux平台下搭建双因子验证系统?

 

如果你是Linux管理员,期望尽可能严加保护你的Linux服务器和桌面,那就应该使用双因子验证。并将它视为“不二的选择”,原因何在?因为添加双因子验证后,恶意用户访问你的机器要难得多。你可以组建这样的一台Linux机器:要是没有与这台机器关联的双因子验证代码,你无法登录到控制台或桌面,或者无法通过安全外壳来登录。

下面我要介绍在Ubuntu Server 16.04上搭建这个系统的过程。如果你之前尝试过这个过程,就知道步骤有了变化,之前详述的方法再也不管用。

准备工作

添加双因子验证时要记住一点:一旦搭建完毕,要是没有第三方生成的代码,你无法进入自己的机器。每当你想要登录,就需要智能手机或紧急代码(安装必要工具时生成的)。

需要的东西

显然,你需要一台Linux服务器或台式机。确保它已全面更新,数据已作好备份。还需要第三方应用软件(比如Authy或Google Authenticator)来生成双因子代码。我本人使用Authy完成这项任务。安装Authy或Google Authenticator应用软件的过程就不作介绍了,因为这个过程不需要加以说明。

好了,咱们开始搭建吧。

安装

登录到Linux机器,遵循这些步骤:

1. 打开终端窗口

2. 执行命令sudo apt install libpam-google-authenticator

3. 输入sudo密码后,按回车键

4. 看到提示后,输入y,按回车键

5. 让安装完成

现在可以针对双因子验证来配置机器了。

配置

回到终端窗口,执行命令sudo nano /etc/pam.d/common-auth。将下面这一行添加到文件末尾:

 

  1. auth required pam_google_authenticator.so nullok 

保存并关闭该文件。

现在我们要为需要登录到该机器的每个用户安装Google-authenticator。我将演示只有一个用户的情况。回到终端窗口,以该用户的身份执行命令command google-authenticator。需要回答一系列问题。第一个问题是:你希望验证令牌基于时间(y/n)y吗?回答y,会看到一个二维码(图A)。在手机上打开双因子应用,添加一个新帐户,扫描该代码。 

如何在Linux平台下搭建双因子验证系统?

图A:扫描二维码,将帐户添加到你的第三方应用软件

一旦添加好代码,回答剩余的问题:

  • 希望我更新你的“/home/jlwallen/.google_authenticator”文件(y/n) 吗?
  • 希望禁止多次使用同一个验证令牌(y/n)吗?这将限制你在大概每30秒登录一次,但提高了发觉或甚至防止中间人攻击的机会。
  • 默认情况下,令牌有效时间是30秒,为了补偿客户端与服务器可能出现的时间偏差,我们允许当前时间前后有一个额外的令牌。如果你遇到了时间同步糟糕的问题,可以将时间窗口由默认的1分30秒调大到约4分钟。你希望这么做(y/n)吗?
  • 如果你登录的计算机没有加固、因而防范不了蛮力登录,可以对验证模块启用速率进行限制。默认情况下,这将攻击者限制在每30秒最多只能登录3次。你希望启用速率限制(y/n)吗?

输入y后按回车键,回答每个问题。

配置SSH

接下来,我们配置ssh以便允许双因子验证,不然你无法通过ssh登录。步骤如下:

先启用PAM模块。为此,执行命令sudo nano /etc/pam.d/sshd。文件打开后,将下面这一行添加到文件末尾:

 

  1. auth required pam_google_authenticator.so nullok 

保存该文件,然后执行命令sudo nano /etc/ssh/sshd_config。在该文件中,寻找:

 

  1. ChallengeResponseAuthentication no 

找到后,改成:

 

  1. ChallengeResponseAuthentication yes 

保存该文件,用命令sudo systemctl restart sshd重启sshd。

登录

从当前的工作终端窗口退出服务器之前,强烈建议你打开新的窗口,试着通过安全外壳登录机器。要是无法登录,回头查一遍步骤,确保没有漏掉哪个环节。一旦以这种方式成功登录,就可以安全地退出当前的会话、重新登录了。

恭喜多了一道新的安全防线

以上就是为你的Linux机器添加另外一道安全防线的所有步骤。切记:要是没有那个第三方双因子验证应用软件,你就无法登录刚配置的机器,所以确保手机随时在身边。

Authy的下载地址:

https://play.google.com/store/apps/details?id=com.authy.authy

Google Authenticato的下载地址:

https://play.google.com/store/apps/details?id=com.google.android.apps.authenticator2

原文标题:How to set up two-factor authentication in Linux,作者:Jack Wallen 

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

责任编辑:庞桂玉 来源: 51CTO
相关推荐

2014-05-21 13:39:56

ApacheSSH双因子验证

2016-06-23 11:49:09

2015-07-03 08:58:14

双因子验证ownCloud

2016-08-15 10:39:36

2011-04-01 09:06:49

WebDAV协作平台

2011-02-25 16:54:54

CentOSpureftpd搭建

2013-05-03 09:44:52

2019-03-24 19:16:35

FedoraSSH系统运维

2017-01-05 14:42:49

LinuxUnix服务器

2016-06-14 10:01:12

2019-08-12 14:04:51

2022-09-13 10:57:45

双因子验证钓鱼攻击

2009-07-01 18:25:50

架设JSP

2014-04-15 15:14:49

UbuntuGhost博客平台

2011-01-07 16:35:53

2019-06-18 15:28:24

TomcatLinux优化

2016-08-22 21:53:06

LinuxPython脚本

2016-08-23 10:00:28

LinuxPython脚本

2011-08-17 11:28:54

Objective-C模拟开发Windows平台

2011-03-11 10:27:45

UbuntuLAMP配置
点赞
收藏

51CTO技术栈公众号