4

Rails 中防止垃圾邮件帐户的最新技术是什么?验证码?有什么好的插件、教程或建议吗?

4

6 回答 6

6

使用库:你(几乎)总是从比你更擅长子域的人那里获得代码更好。Akismet 背后的 Wordpress 人员对博客垃圾邮件的遗忘比我知道的要多,我曾有一段时间是电子邮件反垃圾邮件研究员。您可能对 Akismet 的 Rails 集成插件感兴趣。

多样性防御:垃圾邮件是一个古怪的问题,因为越流行的对策变得越糟糕。因此,特别是对于低调的网站,您可以通过编写简单的一次性绊线来获得令人作呕的好结果。我不会给你任何复制/粘贴的代码,因为它违背了练习的目的:有一个全球唯一的对策​​。

一个简单的例子是有一个隐藏的表单元素,它以一些随机字符串开始,并通过 Javascript 代码设置为已知的良好值。然后你反弹任何没有提供好的价值的东西。这会阻止不实施 Javascript 的客户端,其中包括绝大多数垃圾邮件脚本。当然,有一些问题,因为一些合法的客户端也阻止了 Javascript——但实际上,如果你使用的是 Rails,我猜你是在假设 cookie 处于打开状态并且 Javascript 可以工作。

于 2008-09-20T00:57:21.447 回答
3

我还推荐 ReCAPTCHA,既因为它是您无需管理的高度可靠的服务,又因为它服务于两种常见的商品 - ReCAPTCHA 团队描述的 OCR 任务,以及在教人们验证码如何工作、减少放弃方面取得的进展率。

于 2008-09-20T16:22:23.377 回答
1

如果您想使用验证码来验证只有人类可以注册或添加内容,则有一个重新验证码插件:http: //ambethia.com/recaptcha/files/README_rdoc.html

于 2008-09-19T19:03:08.053 回答
1

编辑:

看来 BranBuster 已经死了(这是几年前的事了)。但我真的很喜欢: https ://github.com/matthutchinson/acts_as_textcaptcha

我是名为“BrainBuster”的 Rails 插件的忠实粉丝。这是一个基于逻辑的验证码,我发现它比“输入这些词”更可取,因为有时破译这些词很烦人……看“10 减 3 是多少?”很简单。并想出答案。YMMV:

https://github.com/rsanheim/brain_buster

于 2008-09-20T15:00:13.200 回答
0

垃圾邮件是公平的。它不关心你在幕后运行什么。

所以通过扩展,在 Rails 上运行良好的东西与在 PHP、ASPNET 等上运行良好的东西是相同的。看看Akismet和那里的各种“业力”反机器人工具。

对于一些现有的 ruby​​ 端口,但您可能需要重写一些才能完成任务。

于 2008-09-19T14:03:07.120 回答
0

对于帐户创建,您可能需要使用验证码。我个人不是很喜欢它们,我认为它们没有那么有效。但是,如果您使用它们,我强烈建议您使用服务而不是尝试创建自己的服务。重新验证码浮现在脑海。不过,不确定是否有 Ruby 或 Rails 的包装器。

但是,为了防止垃圾邮件内容,我强烈建议使用 Defensio(免责声明:我过去曾在那里工作过)。它使用最先进的垃圾邮件过滤技术,例如用于电子邮件的技术,例如贝叶斯过滤。许多博客平台都有插件,包括 Mephisto(使用 Rails 制作)。该 API 很简单,您可以在几个地方查看如何在 Ruby 中使用它的工作示例。

于 2008-09-19T14:05:45.960 回答