标签: reCaptcha

  • 如何申请及设置Google reCAPTCHA v3验证码API

    我们将在我们开发的WordPress付费主题的用户注册模块陆续加入Google的reCAPTCHA验证码接口,以帮助站长智能拦截一些不安好心的人们使用机器人注册。

    Google reCAPTCHA在中国大陆境内可能会存在水土不服的情况,为此我们将reCAPTCHA API校验的接口地址替换成了www.recaptcha.net地址,目前该地址在国内是可正常访问的,站长可安心使用。

    下面,我们一起来看看如何申请及配置Google reCAPTCHA v3.

    首先,我们需要访问Google reCAPTCHA官方链接(需要梯子)申请创建新网站:

    • 标签-随意填入网站标签,可以是网站域名或者网站名称;
    • reCAPTCHA类型-必须选择reCAPTCHA第3版,因为我们的主题只支持这个版本;
    • 域名-即你的网站域名;
    • 所有者-即您邮箱地址;

    勾选接受“reCAPTCHA 服务条款”,最后点击“提交”进入下一步。

    创建网站recaptcha

    然后,在下一个页面,我们将会获取到reCAPTCHA接口的网站密钥及通信密钥:

    recaptcha网站及通信密钥

    最后,进入“WordPress后台-主题设置-基本设置”,切换至“注册登录”标签,选中“验证方式”为reCAPTCHA,填入上一步获取的网站密钥和通信密钥,最后保存即可。

    注:分数阀值,数值越大,Google reCAPTCHA触发机制越灵敏,一般建议设置为0.5即可。

    google recaptcha设置

  • 如何拦截WordPress注册垃圾邮件(插件和策略)

    如何拦截WordPress注册垃圾邮件(插件和策略)

     

    由于WordPress广受欢迎,它是世界各地垃圾邮件发送者的热门目标。他们可能只是试图利用您的网站并获得访问权限。或者,他们可能想向您的社区发送垃圾邮件,例如用垃圾邮件主题填满您的论坛。

    如果您允许在您的WordPress网站上公开注册,您几乎肯定会遇到某种形式的垃圾邮件注册问题。

    在这篇文章中,您将学习如何使用内置的WordPress功能和免费插件来减少垃圾邮件注册。

    1. 默认的WordPress注册过程
    2. 如何拦截WordPress注册垃圾邮件

    默认的WordPress注册过程

    在我们讨论策略之前,让我们简要讨论一下默认的WordPress注册过程。

    如果您允许在您的站点上公开注册,默认的WordPress注册页面位于https://yoursite.com/wp-login.php?action=register:

    默认的WordPress注册表单

    默认的WordPress注册表单

    如您所见,没有太多可以阻止恶意行为者或机器人创建垃圾邮件注册。

    机器人可以通过将相同的公式附加到每个WordPress域直接进入您的注册页面,并且没有什么可以阻止它们填写表单字段。

    如何拦截WordPress注册垃圾邮件

    您可以使用多种不同的策略来拦截WordPress注册垃圾邮件。根据您网站的需求和问题的严重程度,您可能只需要实施其中一种策略,或者您可能需要尝试多种策略来阻止垃圾邮件。

    以下是完整的策略列表:

    1. 完全禁用WordPress注册
    2. 将验证码添加到您的注册表单
    3. 使用专用的WordPress注册垃圾邮件插件
    4. 新用户需要管理员批准
    5. 拦截恶意IP地址
    6. 更改WordPress注册URL
    7. 使用自定义WordPress注册表单插件

    完全禁用WordPress注册

    首先,如果您不需要在您的WordPress网站上公开注册,最好完全禁用注册,而不是试图打击垃圾邮件注册。

    即使您需要在您的站点上提供其他用户帐户,这并不一定意味着您需要启用公共注册。例如,如果您只需要少数人拥有自己的帐户,您可以手动为他们创建帐户,而不是让他们自己注册。

    要完全禁用WordPress上的用户注册,请转到设置 → 常规并确保未选中任何人都可以注册框:

    如何禁用WordPress注册

    如何禁用WordPress注册

    禁用注册后,任何尝试访问您的默认注册页面的人都会看到以下消息:

    禁用注册示例

    禁用注册示例

    将验证码添加到您的注册表单

    抵御用户注册垃圾邮件的另一种方法是在默认的WordPress注册表单中添加验证码

    您可以使用多种类型的CAPTCHA,但大多数人认为Google的reCAPTCHA服务是对用户最友好的一种(也称为No CAPTCHA reCAPTCHA)。它旨在对大多数合法的人类访问者不可见,同时仍向其确定可能是机器人的访问者显示验证码测试。

    要将NoCAPTCHA reCAPTCHA添加到您的WordPress注册表单,您可以使用免费的Advanced noCaptcha & invisible Captcha (v2 & v3)插件。

    要设置插件,您首先需要从Google生成一个免费的reCAPTCHA API密钥——只需输入您的网站并选择要使用的reCAPTCHA类型

    生成reCAPTCHA API密钥

    生成reCAPTCHA API密钥

    然后,您可以进入设置 → Advanced noCaptcha & invisible captcha来设置插件:

    • 选择版本(确保它与您在创建API密钥时选择的版本相匹配)。
    • 添加您的站点密钥和秘密密钥(在您提交上一个屏幕截图中的表单后,Google会为您提供这些)。
    • 选择在哪里启用您的验证码。除了您的注册表单之外,您还可以为您网站的其他部分启用它,例如您的登录表单。

    如何设置WordPress reCAPTCHA

    如何设置WordPress reCAPTCHA

    保存更改后,您应该会在注册页面上看到您的CAPTCHA表单(除非您选择了不可见的方法,在这种情况下,它只会对可疑的机器人可见):

    默认注册表单上的reCAPTCHA示例

    默认注册表单上的reCAPTCHA示例

    使用专用的WordPress注册垃圾邮件插件

    一些通用的WordPress反垃圾邮件插件可以帮助拦截WordPress注册垃圾邮件,以及其他区域的垃圾邮件,例如您的评论部分或表单提交。

    不幸的是,来自Automattic的流行Akismet评论垃圾邮件插件不适用于注册垃圾邮件,但其他一些阻止注册垃圾邮件的流行选项包括:

    同样,这些插件不仅限于注册垃圾邮件,但它们确实可以帮助您阻止垃圾邮件注册,作为其一般反垃圾邮件工作的一部分。

    新用户需要管理员批准

    如果除了垃圾邮件帐户本身之外,您还担心人们在注册后会做什么,另一个好的策略是要求管理员批准新用户。

    例如,如果您担心有人向您的bbPress论坛或BuddyPress社区发送垃圾邮件,则要求管理员批准可以避免这种情况。

    这是与CAPTCHA或其他策略结合使用的好方法:CAPTCHA将过滤掉低级别的自动垃圾邮件,您可以使用手动批准来捕获其他所有内容。

    但是,如果您有大量垃圾邮件注册并尝试自行实施此策略,您可能会发现自己在尝试对所有注册进行分类时不知所措。

    要要求新用户获得管理员批准,您可以使用免费的WP Approve User插件

    安装并激活插件后,它会立即开始工作。您现有的所有用户都将获得批准(以避免出现问题)。

    但是,新用户需要手动批准,您可以从WordPress仪表盘中的现有用户区域执行此操作:

    使用WP Approve User插件批准用户

    使用WP Approve User插件批准用户

    您还可以选择在以下情况下发送和自定义电子邮件:

    • 得到正式认可的
    • 未获批准

    您可以通过访问Settings → Approve User启用这些电子邮件并自定义其内容。

    拦截恶意IP地址

    如果您的大部分注册垃圾邮件来自相同的IP地址,您可以通过首先拦截这些IP地址访问您的站点来减少问题。

    如果您使用宝塔管理服务器,你可以通过宝塔面板后台“安全”,来添加屏蔽IP地址:

    如何使用宝塔面板拦截IP地址

    如何使用宝塔面板拦截IP地址

    大多数cPanel主机还应该为您提供IP拦截工具。

    更改WordPress注册URL

    如果您想在注册页面中添加一些“隐蔽安全”并减少低级机器人流量,您可以将注册页面的URL更改为所有WordPress站点使用的默认值。

    注册页面实际上是WordPress登录页面的一部分,因此您可以使用任何允许您更改WordPress登录URL的插件来完成此操作。

    一个不错的选择是WPS Hide Login

    安装插件后,转到设置 → WPS Hide Login以输入您的新URL。您还可以将默认URL重定向到另一个页面,例如您的404页面:

    如何更改WordPress注册URL

    如何更改WordPress注册URL

    例如,如果您将登录URL更改为yoursite.com/sneakylogin,则默认注册页面将不再起作用。您的新注册页面将是yoursite.com/sneakylogin/?action=register

    使用自定义WordPress注册表单插件

    拦截WordPress注册垃圾邮件的另一个不错的选择是使用custom WordPress registration form插件

    这些插件可以让您绕过正常的 WordPress 注册过程,还可以实现一些有用的反垃圾邮件策略,例如:

    • 自定义注册URL – 将您的注册URL更改为远离默认值可以减少一些低级别的垃圾邮件,尽管它本身不太可能阻止用户注册垃圾邮件。
    • 电子邮件确认– 这通过要求新用户确认他们的电子邮件来防止垃圾邮件用户使用虚假电子邮件。如果用户没有确认他们的电子邮件,插件将自动放弃该注册。
    • 新用户的管理员批准——这些插件通常可以帮助您从上面实现管理员批准功能。
    • 垃圾邮件预防——这些插件还可以帮助您将验证码或蜜罐字段添加到您的自定义注册表单中。

    许多通用的WordPress表单插件还包括创建具有反垃圾邮件功能的自定义注册表单的能力。但是,这里的缺点是您通常只能在高级版本中获得注册功能。如果您愿意付款,一些不错的选择是:

    让我们仔细看看如何使用User Registration和Profile Builder插件提供的两个免费解决方案。

    1. 用户注册

    当您安装免费的用户注册插件时,它会给您一个选项来自动创建位于yoursite.com/registration的自定义注册页面(您可以随时更改此 URL)。

    在注册过程中,您还有其他一些减少垃圾邮件的选项。

    首先,在插件设置的常规选项卡中,您可以使用用户登录选项下拉菜单在用户注册后要求管理员批准:

    在用户注册插件中启用管理员批准

    在用户注册插件中启用管理员批准

    您还可以转到“Integration”选项卡来设置Google reCaptcha(您需要您的API密钥——您可以按照本文前面的相同步骤进行操作):

    在用户注册插件中启用reCAPTCHA

    在用户注册插件中启用reCAPTCHA

    要在特定注册表单上启用CAPTCHA,您还需要编辑该表单并在其中启用它。编辑表单时,您还可以根据需要添加其他配置文件信息字段。

    2.配置文件生成器

    免费的Profile Builder插件遵循相同的基本方法。

    要自定义您的注册表单字段,您可以转到Profile Builder →  Form Fields。要将CAPTCHA添加到您的表单中,您可以包含一个reCAPTCHA字段,您需要在其中添加您的API密钥:

    在Profile Builder插件中添加CAPTCHA字段

    在Profile Builder插件中添加CAPTCHA字段

    然后,要显示您的自定义注册表单,您可以在您网站的任何位置添加[wppb-register] 短代码。

    Profile Builder还包括一项要求管理员批准新注册的功能,但它仅在高级版本中可用。

    小结

    如果您需要在您的WordPress网站上允许公开注册,注册垃圾邮件可能是一个令人沮丧的问题。您可以结合不同的策略减少甚至完全消除注册垃圾邮件。

    最简单、最轻量的选项是将NoCAPTCHA reCAPTCHA添加到默认的WordPress注册表单中。大多数人类访问者不会注意到任何不同,但谷歌会向机器人显示验证码测试,以防止它们注册垃圾邮件。

    如果您想要彻底检修,您还可以使用专用的WordPress注册插件来创建自定义注册表单,其中包括其自己的反垃圾邮件属性,以及新用户的管理员批准等功能。

  • 如何使用CAPTCHA验证码将机器人和垃圾邮件发送者拒之门外

    如何使用CAPTCHA验证码将机器人和垃圾邮件发送者拒之门外

    毫无疑问,WordPress的安全性很重要。毕竟,违规行为可能会对您的网站造成严重损害。但是,随着黑客使用机器人快速有效地攻击网站,您可能会觉得胜算很大。

    幸运的是,您可以使用一个非常简单的工具来阻止机器人和垃圾邮件发送者进入您的WordPress网站。结合全自动图灵测试来区分计算机和人类 (CAPTCHA) 是一种提高网站安全性的简单、省力的方法。

    本指南将向您介绍验证码以及它们如何在保护您的网站免受黑客和垃圾邮件侵害方面发挥作用。然后我们将引导您完成如何将它们添加到您的网站并介绍一些最好的WordPress CAPTCHA插件。

    1. 了解CAPTCHA验证码
    2. 什么是谷歌验证码?
    3. 如何将验证码添加到您的WordPress网站

    了解CAPTCHA验证码

    您可能已经在网上多次看到CAPTCHA。它们可以采用多种形式,其中最常见的一种是您必须破译的扭曲文本。其他要求您从一组低分辨率照片中选择符合特定规格的图像:

    图像验证码示例

    图像验证码示例

    在所有情况下,所提出的挑战是大多数人应该能够轻松完成的挑战。然而,即使是今天的先进机器人也无法理解被扭曲的文字或图像碎片。当他们无法完成测试时,他们将被您的网站(或任何其他CAPTCHA保护的)阻止。

    这很重要,因为机器人用于多种可能危及您网站的安全性和可信度的情况。蛮力攻击是最常见的黑客策略之一,它使用机器人在您的登录表单中反复输入凭据 ,直到他们获得对您网站的访问权限。

    跨站点脚本 (XSS) 是另一种类型的网络攻击,其中黑客通过表单将恶意代码注入您的站点,例如您的登录页面或评论部分。这可能会导致恶意软件存储在您的网站上、信息被盗以及其他负面结果。

    机器人还可以使用低质量链接向您的评论部分发送垃圾邮件,这些链接会损害您的搜索引擎优化 (SEO)并阻止合法用户。垃圾邮件很烦人,但更重要的是,它使您的网站看起来保护不足且监控不力。

    您网站上用户可以输入信息的任何地方——换句话说,任何形式——都容易受到机器人的攻击。在提交表单之前要求验证码可防止非人类成功访问您的网站或将恶意代码注入其中。

    什么是谷歌验证码?

    虽然CAPTCHA清楚地为您的网站提供了各种好处和保护,但它们确实有一些缺点。例如,它们往往会对用户体验 (UX) 产生负面影响。通过减慢用户的速度,这些简单的测试会阻碍访问者顺利快速地在您的网站上实现他们的目标。

    此外,有视力障碍或阅读障碍等其他挑战的用户可能会发现完成您的验证码很困难。无意中将人类用户排除在您的网站之外对您或他们都没有好处,即使它会在此过程中转移机器人。

    2014年,谷歌发布了它的No CAPTCHA reCAPTCHA,这是它自2007年以来一直使用的扭曲文字和图像测试的继承者。新系统只需要用户选择“我不是机器人”旁边的复选框来确认他们的合法性:

    WordPress登录页面上的Google reCAPTCHA复选框

    WordPress登录页面上的Google reCAPTCHA复选框

    这比更传统的CAPTCHA更容易和更快,并且可供更广泛的用户使用。更重要的是,谷歌一直在不断改进这项技术。2018年,它还发布了所谓的“隐形验证码”,无需用户进行任何故意操作即可检测机器人。

    向您的WordPress网站添加验证码时,您将有机会选择要使用的测试类型。但是,请记住,实施Google reCAPTCHA v2或v3应该有助于使您的网站对用户来说更有趣和更容易访问。

    如何将验证码添加到您的WordPress网站

    当谈到WordPress安全性时,添加验证码是让机器人更难渗透到您的网站的最简单方法之一。幸运的是,合并一个也很容易。您只需三个简单的步骤即可进行设置。

    第 1 步:安装和激活WordPress CAPTCHA插件

    将验证码添加到WordPress网站的最简单方法是使用插件。WordPress插件目录中有许多高质量的选项,因此您不必为了提高网站的安全性而倾家荡产。

    但是,在选择插件之前,需要考虑几个关键功能。

    首先,您要考虑插件提供的CAPTCHA类型。正如我们上面所讨论的,谷歌reCAPTCHA比要求访问者点击图像或解码扭曲的文本更加用户友好。

    此外,您需要确保您的插件可以将验证码添加到您网站的多个区域,而不仅仅是您的登录页面。我们将在第 3 步中更详细地探讨这个想法。现在,请记住,在您的网站上有表单的任何地方,您都可能希望使用CAPTCHA来阻止机器人。

    让我们看一下满足上述条件的三个插件。BestWebSoft的Google Captcha (reCAPTCHA) 是最受欢迎的选项,有超过200,000次活动安装:

    谷歌验证码插件

    谷歌验证码插件

    顾名思义,这个插件在您的登录和注册页面、密码重置和联系表格,甚至在您网站的评论和推荐提交中都包含 v2 或 v3 Google reCAPTCHA。除了提高安全性外,这还有助于防止垃圾邮件。

    Advanced noCaptcha & Invisible Captcha也获得了很高的评价,并包括许多相同的功能:

    高级noCaptcha插件

    高级noCaptcha插件

    该插件还提供多站点兼容性 ,并与流行的会员工具(如bbPress 和BuddyPress )集成。此外,如果需要,您可以将多个验证码添加到单个页面。

    最后,您可能还需要考虑Login No CAPTCHA reCAPTCHA

    Login No CAPTCHA reCAPTCHA插件

    Login No CAPTCHA reCAPTCHA插件

    该插件包括简单的Google reCAPTCHA,可用于登录、注册和忘记密码表单。但是,它没有与您的评论部分或联系表格集成,这使得它比我们看过的其他两个插件更受限制。

    第 2 步:创建您的Google reCAPTCHA并将其添加到您的网站

    一旦您安装并激活了您的插件,您需要创建您的Google reCAPTCHA(假设您选择了一个使用它的插件)。前往Google reCAPTCHA管理控制台,并填写注册表:

    reCAPTCHA注册页面

    reCAPTCHA注册页面

    请注意,您可以在v2或v3 reCAPTCHA之间进行选择,并且可以使用复选框或不可见的测试。后者将提供最好的用户体验,因为它不需要用户采取任何行动。但是,v2复选框往往更可靠。

    填写完所有字段后,单击Submit按钮。在下一个屏幕上,您将获得一个Site Key和一个Secret Key

    为新的Google reCAPTCHA获取站点和密钥

    为新的Google reCAPTCHA获取站点和密钥

    您需要在WordPress网站上将两者都输入到您的CAPTCHA插件设置中。此过程可能会略有不同,具体取决于您选择的插件。但是,您应该能够轻松地在仪表盘侧边栏中找到设置,并将您的密钥粘贴到相关字段中:

    将Google reCAPTCHA密钥添加到Google Captcha插件设置

    将Google reCAPTCHA密钥添加到Google Captcha插件设置

    不要忘记保存您的更改。您可能还想为您的Google reCAPTCHA管理控制台页面添加书签并定期检查。在有足够数量的实时流量访问您的网站后,您将能够查看 与表单提交请求相关的有价值的分析

    第 3 步:配置您的设置以保护关键区域

    正如我们之前提到的,有几个区域非常适合整合您的验证码,以便为您的网站提供最大程度的保护。安装您选择的插件后,您可以配置设置以确保包含所有重要页面。

    Google CAPTCHA和Advanced No Captcha都在其常规设置中包含一个复选框列表。在那里,您可以选择要使用reCAPTCHA的位置:

    选择显示Google reCAPTCHA的位置

    选择显示Google reCAPTCHA的位置

    理想情况下,这将包括您网站上的任何表格,包括易受攻击的区域,例如:

    • WordPress管理员登录页面
    • WooCommerce登录页面
    • 用户注册登记表
    • 密码恢复表格
    • 联系表

    您的网站可能包含其他独特的形式,例如用户生成的内容提交、调查或电子邮件注册。在这种情况下,您可能需要使用Advanced noCaptcha和Invisible Captcha,因为该插件提供了用于以任何形式合并Google reCAPTCHA的操作钩子 。

    或者,您可以改为投资Google Captcha (reCAPTCHA) Pro 。它提供了与流行插件的额外集成,例如JetpackMailChimp for WordPress和几个表单构建器

    将验证码添加到您的登录页面

    您的登录页面是暴力破解和跨站点脚本 (XSS) 攻击的主要目标。

    要使用Google Captcha插件向其添加CAPTCHA,请导航至Google Captcha > Settings > General > Enable reCAPTCHA for inside WordPress,然后在WordPress Default下 选择Login Form

    登录表单选项Google Captcha插件

    登录表单选项Google Captcha插件

    您的登录页面现在应该受到保护。

    在您的密码重置页面上加入验证码

    当他们尝试登录您的站点失败时,黑客可能会被引导到用户可以重置其密码的页面。要添加验证码以保护此页面,请导航至Google Captcha > Settings > General > Enable reCAPTCHA for

    Google Captcha插件中的Rest密码表单选项

    Google Captcha插件中的Rest密码表单选项

    然后, 从Reset password form中选择WordPress Default

    使用验证码保护您的WooCommerce登录页面

    您的WooCommerce登录页面与您的核心WordPress页面一样容易受到恶意攻击。要使用Google Captcha保护它,您需要插件的premium version(下方黄色部分)。准备好后,在您的WordPress仪表盘前往Google Captcha > Settings > General > Enable reCAPTCHA for中:

    (高级)WooCommerce登录表单选项

    (高级)WooCommerce登录表单选项

    在这里,您可以 从External Plugins列表中选择WooCommerce Login form

    在您的联系表上放置验证码

    与我们在本文中讨论的其他方式相同,您的联系表单可以使用CAPTCHA进行保护。但是,有几个不同的联系表单插件与Google CAPTCHA集成,包括:

    您需要在您的网站上激活上述工具之一,才能将验证码添加到您的联系表单中。然后转到Google Captcha > Settings > General > Enable reCAPTCHA for并单击您首选插件的复选框:

    Google Captcha插件中的免费和高级联系表单选项

    Google Captcha插件中的免费和高级联系表单选项

    这将完成该过程。如果您在WordPress网站上使用了另一个联系表单插件,您可能会考虑使用与其集成的其他CAPTCHA插件。还有一些表单构建器插件可以自行合并验证码,例如WPForms

    小结

    如果您想保护您的内容、您的用户和您的品牌声誉,那么将恶意机器人拒之门外是至关重要的。减慢速度的最简单方法之一是在WordPress网站的表单中添加验证码。

    将CAPTCHA添加到您的WordPress网站只需要三个步骤:

    1. 安装并激活WordPress CAPTCHA插件。
    2. 创建您的Google reCAPTCHA并将其添加到您的网站。
    3. 配置您的设置以保护关键区域。