给WordPress加上更安全的2FA登录

2FA

2FA(2 Factor Authentication),中文叫做”双因子认证“是近年来备受重视的一种安全验证手段。传统的登陆验证,无论是密码、密钥还是指纹、掌纹、面部,都是单因子的静态信息。这类信息带来的问题就是,一旦信息泄露,攻击者可以轻松获得认证通过。这显然是不太安全的,因为信息泄露是难以避免的,而且普通人还可能会遇到弱密码等问题。因而,2FA就受到了广泛欢迎,虽然它有一定的麻烦,也不是完美的安全,但至少及大幅度地提高了认证系统的安全性。现在在中国很流行的手机验证码,就是2FA的一种形式。

手机验证码的一大问题在于手机号的唯一性很强,但丢失手机之后只有PIN码可以保证其安全。这就导致了它既不是特别便携,又不是特别安全。此外,短信还会产生额外的费用。基于时间的OTP代码,可以提供某个时间段内有效的临时密码。同时,其安全性收到了服务提供商和设备加密的安全保障,因而更加便携,也更加安全。

Microsoft Authenticator

能够提供基于时间的OTP代码服务的主要有两款产品:微软的Microsoft Authenticator和谷歌的Google Authenticator。事实上,它们在某种程度上是互相兼容的。我选用了微软的,并在WordPress上加入了2FA认证。

无论是iOS还是Android还是Windows,都可以在官方应用商店下载,即可使用。

Microsoft Authenticator
Microsoft Authenticator的介绍

WordPress实现2FA

WordPress自身并没有2FA的功能,但有无数插件团队引入了这一功能。我选用的是WPMU DEV团队开发的Defender Security,它提供了病毒扫描、防火墙、2FA、登陆界面修改等WordPress主要的安全功能。至于为什么,主要原因是WPMU DEV的插件具有统一的风格且成套出品,比如Hummingbird可以解决缓存问题优化速度,Smush可以优化图片,SmartCrawl可以作为SEO插件等等。考虑到同一家产品的兼容性往往都不错,于是就选用了全套。

Defender Security中开启2FA后,需要用Windows Authenticator扫描验证。APP上会显示站点名称。在登录WordPress时,先按原来的方式输入用户名和密码,之后会提示如下页面:

加入2FA之后的WordPress登陆界面
2FA登录界面

此时,就需要打开Microsoft Authenticator,点击对应站点,会看到一个30秒更新一次的6位随机密码,将之输入,就可以成功登录WordPress了。

加入2FA后,能够有效避免密码泄露带来的危险影响。此外,Microsoft Authenticator不仅可以安装在手机上,同样可以装在Windows电脑上,以实现通过不同平台均可以在2FA的保护下登录WordPress。

发表评论