如何使用双因素身份验证保护您的WordPress的帐户登录在Ubuntu 14.04

在本教程中,我们将学习如何额外的安全层的WordPress添加到登录过程:双因素认证。这是在网络安全领域最显著的发展之一。我们将使用谷歌的Authenticator WordPress插件和FreeOTP移动应用程序,以使此安全一步。

介绍

安全性是运行WordPress网站最重要的方面之一。我们很多人都认为黑客不会打扰我们的网站,但实际上未经授权的登录尝试是在公共Internet上运行服务器的常见部分。 在本教程中,我们将学习如何额外的安全层的WordPress添加到登录过程: 双因素认证 。这是网络安全领域最重要的发展之一。 双因素认证或“2FA”在登录到站点或系统时包含两个步骤:
  1. 您的用户名和密码
  2. 一种随机生成的,随时间变化的代码(即,一个固定的时间后的代码到期)称一次性密码(OTP)
有多种方法可以访问OTP:
  • 短信
  • 电话
  • 电子邮件
  • 离线,通过移动应用程序
虽然高风险的系统,如银行和交易账户用于敏感的交易短信交货,我们将使用生成OTP的离线模式 。使用移动应用程序是免费的,并在高可用性,实施成本和易用性之间达到最佳平衡。

目标

安装并启用双因素身份验证后,WordPress将具有更安全的登录过程。 除了输入您的用户名和密码以登录外,您还需要输入移动应用程序生成的密码。这意味着即使您的WordPress凭据被破坏,黑客将无法登录到WordPress没有你的手机。 在本教程的最后,我们还将介绍一种防故障恢复技术,以防丢失手机。让我们开始!

先决条件

我们需要在DigitalOcean Droplet上功能安装WordPress。虽然您可以将本教程适用于现有的WordPess安装,但已经过专门测试:
  • 一个Ubuntu 14.04 Droplet
  • 一个sudo的用户
  • 全新安装的WordPress与Nginx的 ,这也需要读者安装LEMP
  • 您还需要访问运行iOS或Android的移动设备,您可以在其中安装FreeOTP移动应用程序

第1步 - 安装Google Authenticator插件

在此步骤中,我们将为我们的WordPress网站安装Google身份验证器插件。 安装并启用WordPress的Google Authenticator插件 安装插件的最简单的方法是通过WordPress仪表板。立即登录您的WordPress仪表板。 按照以下步骤顺利安装:
  • 从仪表板,转至插件>添加新
  • 搜索字段中,键入google authenticator
  • 这将加载几个匹配查询名称的插件
  • 安装称为谷歌的Authenticator 亨里克·沙克插件
  • 一旦安装完成后,选择激活插件链接
注意:如果这是你第一次安装插件这个WordPress例如,您可能需要输入您的SSH凭证。 输入您的LinuxSudo的用户名和密码(或更高的安全性,上传一个公钥),并选择SSH2选项。

(可选)手动安装插件

或者,您也可以手动下载插件并激活它。我们描述以下步骤。 登录到您的DigitalOceanDroplet并导航到你的plugins目录:
cd /var/www/html/wp-content/plugins/
注:在本教程中,我们从下面的设置本教程将安装的WordPress中/var/www/html/目录下。如果您使用不同的设置,请确保输入安装WordPress的正确目录。
接下来,我们从WordPress存储库下载插件:
wget https://downloads.wordpress.org/plugin/google-authenticator.0.47.zip
注:在写作的时候,谷歌的身份验证插件的最新版本是0.47版。 请确保你安装最新版本

第2步 - 下载FreeOTP应用程序

在此步骤中,我们将在我们的移动设备上下载并安装FreeOTP应用程序。 FreeOTP是一个开源应用程序,支持具有一次性密码协议的系统的双因素身份验证。换句话说,它是Google Authenticator的替代品。我们将使用这个应用程序来生成我们的一次性密码登录到我们的WordPress网站。 Google Play商店中的FreeOTP应用程式 FreeOTP是由RedHat赞助,并为Android和iOS的应用程序。这里是获取应用程序和其官方项目的链接。

第3步 - 激活您的配置文件的Authenticator插件

在这一步,我们将激活管理WordPress配置文件的WordPress插件,并配置它使用我们的FreeOTP应用程序。 在WordPress后台,进入下发现用户 个人资料>您的个人资料 。 找到小节称为谷歌身份验证设置Google Authenticator插件配置 让我们来看看插件的各种配置选项:
  • 活动:选中此复选框,激活插件
  • 轻松:这增加从10秒的时间限制到4分钟用于输入OTP。如果您在分配的时间内无法复制OTP,请启用此功能
  • 说明:输入一个名称(最好是你的博客的名字)。此值将显示在移动设备上的FreeOTP应用程序中
  • 显示/隐藏QR码:单击此按钮显示QR码
扫描freetp应用程序中的qr代码

连接FreeOTP应用程序

在您的手机或平板电脑上启动FreeOTP应用程序。 点击应用程序中的小QR码图标。按住您的手机扫描从WordPress的QR码,现在应该显示在您的计算机屏幕上。 您应该立即看到指定为WordPress的与你在它下面的说明输入的文本中FreeOTP一个条目。这表示我们已成功将我们的WordPress网站链接到FreeOTP应用程序。 保存更改:最后,我们必须保存到目前为止,我们所做的更改。 在WordPress中,滚动到页面的底部,并单击更新个人资料按钮。

第4步 - 测试登录

在此步骤中,我们将验证是否启用双因素身份验证。 注销您的WordPress网站,然后尝试重新登录。你应该使用相同的登录屏幕映入眼帘,再加上谷歌身份验证码输入框。 2fa启用的WordPress登录表单 在您的移动设备上启动FreeOTP应用程序。单击WordPress按钮生成一个新的一次性密码。 在输入框中键入该值。您应该能够登录到WordPress。

为其他用户启用双重身份验证

您可以(并且应该)为有权访问您的WordPress安装的其他用户启用双因素身份验证。确保他们方便的FreeOTP安装在自己的移动设备上,当你设置!

帐户恢复

如果你失去了你的手机,那么你会被锁在你的WordPress网站。这是实现双因素身份验证的主要缺点。值得庆幸的是,我们有这样的情况很简单修补程序 。 所有你需要做的就是禁用谷歌身份验证器插件。 启动您DigitalOceanDroplet的shell并导航到plugins目录中。
cd /var/www/html/wp-content/plugins/
重命名google-authenticator文件夹别的东西。
mv 'google-authenticator' 'deactivate-plug-google-authenticator'
这将禁用插件,因为WordPress将无法找到插件的工作目录。 接下来,照常登录您的WordPress帐户。这一次,它不会要求额外的令牌,只是你的正常密码。 一旦您访问了WordPress管理员仪表板,并已恢复您的旧设备或获得一个新的设备与FreeOTP安装,您需要启用插件增益。从Droplet的shell中,使用以下命令: mv 'deactivate-plug-google-authenticator' 'google-authenticator' 如果您使用的是旧设备,这应该是您需要的。您可以按照第4步再次测试登录过程。 或者你可能需要去WP仪表板>插件>安装的插件 ,并再次启用谷歌的Authenticator插件。 转到您的用户配置文件, 用户>您的个人资料 ,并找到谷歌身份验证设置子部分。 如果您使用的是新的设备这一次,然后单击创建新的秘密 。 生成新的QR码,旧的QR码被取消。 扫描您的设备上的新的QR码。 这是我们启动双因素身份验证和连接FreeOTP应用程序第3步所示,我们做同样的事情。 或者,您可以禁用双因素身份验证,直到找到您的设备。您选择相应的选项后,请务必通过点击更新个人资料按钮保存更改。

结论

集成双因素身份验证是提高WordPress网站安全性的绝佳措施。现在,即使攻击者获得您的帐户凭据,他们将无法登录您的帐户没有OTP代码!和灾难恢复技术是有用的,当你找不到你的手机。 WordPress管理员还需要采取哪些其他安全措施?在下面的评论分享你的想法!