dsoares / rcguard
Roundcube 插件,强制对多次登录失败的用户执行 reCAPTCHA 验证
Requires
- php: >=5.4
- roundcube/plugin-installer: >=0.1.3
README
简介
此插件记录失败的登录尝试,并在失败尝试次数过高时要求用户通过 reCAPTCHA 验证过程。它提供对自动攻击的保护。
失败的尝试按 IP 记录并存储在数据库表中。IP 在一定时间后会释放。
安装
重要:此插件需要 reCAPTCHA API 密钥才能正常运行。
这些可以在 https://www.google.com/recaptcha 获取。
使用 Composer
将此插件 dsoares/rcguard
添加到您的 Roundcube composer.json
文件的 require
部分,运行 composer update 并在主 Roundcube 配置文件中启用 rcguard。
或者直接运行
composer require dsoares/rcguard
将 config.inc.php.dist
复制到 config.inc.php
并按需修改。
手动
将此目录的内容放置在 plugins/rcguard
下,并在主 Roundcube 配置文件中启用 rcguard。
将 config.inc.php.dist
复制到 config.inc.php
并按需修改。
使用 SQL/
下的文件创建 rcguard 所需的数据库模式。该表应创建在 Roundcube 使用的数据库中。注意:如果您使用 Roundcube 的 db_prefix
配置选项,则必须相应地重命名表 rcguard
。
自定义 reCAPTCHA
您可以在 config.inc.php
文件中自定义以下内容
- API 版本:
v3
、v2invisible
或v2
; - v2 小部件主题:
light
或dark
; - v2 小部件大小:
normal
或compact
。
有关小部件的更多信息,请参阅 reCAPTCHA 文档。
插件配置文件还有其他一些您可能需要配置的选项,请查看。
自 2018 年 5 月以来,您可以定义代理(匿名或认证)以请求 recaptcha 小部件。
支持的数据库
- MySQL
- PostgreSQL
- SQLite
联系
此插件的原作者是 Denny Lin。我几年前将其分支出来,1) 使用 reCAPTCHA v2.0,2) 添加 larry 皮肤,3) 因为项目的 issue 被回答得太慢。此外,原始项目自 2015 年以来就没有更新,而 Roundcube 的 API 在此期间也发生了许多变化。
我将维护此项目,因为我需要它与最新的 Roundcube 版本一起工作。
欢迎评论和建议(优先通过 issues)。
电子邮件: Diana Soares
许可证
此插件在 GPL-3.0+ 许可证下分发。
此插件还包含一个用于 reCAPTCHA 的 PHP 库,该库在自身的许可证下分发。请参阅库文件以获取确切详情。