我需要/我什么时候需要验证码?

时间:2010-11-04 07:39:46

标签: php javascript linux security email

我有一个分类广告网站,用户必须填写表格以发布分类(偏离)。

我想知道,你觉得我在表格上需要某种形式的验证码吗?

此外,我正在“注册”页面上,用户可以在其中获得自己的用户名/通行证并登录以更轻松地发布分类广告。

另外,我有一个邮件服务器设置......

所以现在,用户可以点击分类和底部填写表格(姓名,电子邮件,消息)中的三个字段,并向分类的海报发送电子邮件。那里没有验证码。这样安全吗?

我的防火墙已设置好,因此除了来自网站IP之外,它阻止了对邮件服务器的任何外部访问。

我可以将防火墙设置为某些设置,以便我不需要验证码吗?

我有自己的虚拟专用服务器顺便说一句,它正在运行Ubuntu。

后续问题是,如果垃圾邮件机器人或其他任何东西获得我的表格并将其填满,或者使用我的邮件服务器发送电子邮件,那会发生什么呢?

我的网站和邮件服务器会被列入黑名单吗?这是可逆的还是我必须创建一个新的邮件服务器呢?

由于

6 个答案:

答案 0 :(得分:6)

我遵循“最小障碍”的设计原则。您希望人们使用您的网站,因此您希望尽可能简化这些网站。任何事情 - 包括验证码 - 都可能会让它们失控。所以我的标准路线是在您真正看到垃圾邮件问题之前,绝对不会在任何地方都包含验证码。即便如此,看看问题是否可以在没有验证码的情况下解决。

关于“如果垃圾邮件机器人开始发送垃圾邮件会怎么样”的问题。对此的简单解决方案是预先实施速率限制。使其成为某个给定IP地址的人不能比每分钟说一次更频繁地发起电子邮件的发送。这实际上不会对真人造成问题,但会阻止垃圾邮件机器人。您甚至可以尝试检测高速率的情况,并暂时阻止该IP地址24小时。这甚至可以阻止一分钟一分钟的垃圾邮件。

答案 1 :(得分:2)

我可以看到两种情况,你可能会考虑使用Captcha。

  • 注册
  • 互动/联络表格

但是,如果过度使用,验证码确实会让用户心烦意乱。

所以,在这些情况下:

注册

任何尝试创建批量帐户的人最简单的方法是停止或至少不方便使用电子邮件确认。因此,用户填写表单,包括他们的电子邮件地址。然后,表单会向他们发送一封电子邮件,其中包含他们必须单击以激活帐户并允许他们登录的链接。

互动/联系表格

将有两种人通过这种形式进行互动。将有注册和登录用户,并将有临时访客。由于Captcha是一种测试一个人是否是某人的方法,任何注册/登录用户已经证明了自己,没有必要为他们使用Captcha。

但是,对于休闲的非登录用户,您可以使用Captcha。

所以,简短版本,你可以说,我讨厌Captcha,只在绝对必要时使用它。

答案 2 :(得分:0)

captch主要用于安全目的,以停止自动化。就像你有一个注册专栏一样,一个极客可以在几分钟内轻松地让1000个用户自动化它......你会失去太多的空间..同时,如果你使用验证码,它会更安全,你可以成为确保所有用户都是人,而且没有一个是计算机生成的用户名。 所以,如果你认真对待你的网站,我会建议去抓拍。但保持简单,就像他们在megaupload。我不知道哪个服务但仍然很简单。

答案 3 :(得分:0)

绝对是。

查看reCAPTCHA

你有一个PHP插件here

答案 4 :(得分:0)

  

我可以将防火墙设置为某些设置,以便我不需要验证码吗?

没有。验证码和防火墙是完全不同的东西,不能作为彼此的替代品。

  

后续问题是,如果是垃圾邮件机器人或其他什么,可以获取我的表单   并填写了很多,或使用我的   邮件服务器发送电子邮件,会是什么   发生呢?

可以编写一个脚本,自动完成您网站上的注册过程。它可以在您的服务器上创建如此多的帐户和/或发布一些对您的网站不利的内容,或者可以将您的网站用于其他人的广告。

答案 5 :(得分:0)

Beter尝试Sblam,它对访问者来说是透明的,不需要用户输入,它在很多网站上都适合我。