成功永久禁止某个网站的用户?

我有一个社交网站,我想从网站上禁止用户。 我已经将他的IP地址添加到.htacess文件的禁止列表中, .htacess其禁用到了php级别,但是他不断使用不同的IP地址。

如何永久禁止用户,无论他多么努力地尝试重新进入网站?

我想你从错误的angular度来看这个。 许多网站(包括这一个)慢慢让你看到更多的能力,certificate你可以信任。

我build议让第一篇文章必须是主持人,或某种forms的投票系统,然后他的任何职位将保持可见很长时间。

这确实是一个人的问题,而不是技术问题。

感谢Tor和无数的其他代理服务,你不能依靠IP禁止来阻止用户。

您需要实施某种其他屏障 – 可能需要注册电子邮件validation要求,或者需要审核新帐户的审批? 除非您的用户注册过程需要血液样本,社会安全号码和母亲的婚前姓名,否则您将会对非法账户开放。

在可用性和安全性之间select什么样的障碍是一个重要的决定 – 请记住,对于阻止一小部分巨魔,恶意用户或机器人的所有事情,会给更多的合法用户造成不便。

当新用户注册时,使用像Twilio这样的服务向手机发送包含短密码的短信。 他们必须正确input此代码来validation其帐户。 这类似于Craigslist(企图)阻止垃圾邮件发送者,也被网上银行经常用作穷人的双因素authentication系统。

我不能保证你“成功,永久”,但是你可以做很多事情来让他的生活变得更加困难。 足够的这些,他会放弃。

您已经尝试使用他的IP地址进行识别,但很容易find免费的代理服务器。 find免费和匿名的代理服务器有点困难。 大多数代理服务器在X-Forwarded-For:头中发送用户的IP地址。 你可以使用mod_security来阻止这些。

 SecRule REQUEST_HEADERS:X-Forwarded-For "@Contains 192.168.0.1" 

显然,你应该用他的实际IP地址replace192.168.0.1 。 您可以通过删除最后一个八位字节来阻塞更大的一组代理IP。

这将限制他现在使用匿名代理和Tor。 您可以确定何时使用Tor,因为每个请求都来自不同的IP地址,并且这些请求可能都在Tor出口节点列表中。 这里是两个列表的例子 。 还有代理列表可用。

你可以通过使用Flash或Javascript甚至只是一个图像链接来强制他绕过一个子请求的代理。 这取决于如何在他的计算机中设置代理(可以将其放入浏览器或操作系统,或者将其作为networking上的透明代理),但不pipe其types如何,它可能只代表端口80和443。让你的网站让他连接到端口8080或端口25或其他东西,并在请求中编码一个唯一的标识符。 这将在PHP中做的伎俩:

 echo("<img src=\"http://example.com:25/".session_id().".jpg\" />"); 

我会采取的下一步是使用EverCookies 。 取决于他在移除所有各种存储方法方面的优秀程度,单凭这一点可能足以可靠地识别他。 他可以通过在虚拟机中运行浏览器来避免这种情况,并在每次被禁止或者不运行javascript时将其恢复到已知状态,但是您已经成功地使自己的生活变得更加困难。 你可能会使用他没有运行javascript来识别他的事实。

同样值得注意的是,Google Analytics(分析)在其__utma cookie的第二个“字段”(以点分隔)中分配了一个唯一的标识符。 如果您拥有Google分析function,并且不删除此Cookie,则可能已经有足够的资料来跟踪他。

要loggingcookie(以及所有HTTP标头),您可以使用取证日志 。

接下来, 浏览器指纹识别有点困难,并且容易出现误报(如果你使它有点模糊)和假阴性(如果你只是去精确匹配),但是可以完成。 如果他一直将虚拟机恢复到一个已知状态,实际上会有效,因为这意味着他的指纹永远不会改变。 每次被禁止时,他必须改变虚拟机的屏幕分辨率,时区和安装的插件。

还有一种方法:确定他发布的内容 。 只要把他当作正常的垃圾邮件发送者就好 通过贝叶斯学习引擎提供他的数据,并教他识别他…一旦它足以识别他发布的内容,就禁止发布这类内容的任何人。 这个人有很好的好处,即使他们不是同一个人,那么误报也许是你想要禁止的人。

我们处理这个不同。 随着临时知识产权禁令(这是很容易规避),我们有一个cookie,标识他被禁止。 如果他回来了,我们将有一个特殊的用户组,我们将分配给他。 他没有注意到任何exception情况,一切看起来都像他预期的那样工作。 但是他所有的行为,职位,PM等都是其他人看不见的。

最终他会感到无聊,因为没有人对他作出反应(如果没有他的话,他们应该如何看待)

取决于他知道多less,你可以尝试保存一个“令牌的死亡”作为一个cookie。 如果find该cookie,请提供被禁止的页面。 他可能不会想要检查这样的事情,特别是如果你select某种鬼鬼祟祟的名字(也许某个会话相关?)

报告给他的ISP。 包括详细的日志(IP,操作,时间戳与时区),您的网站的pipe理政策的副本,等等。 如果他的ISP不合作,则禁止他的整个ISP。 如果用户抱怨,告诉他们你非常抱歉,但他们有一个拒绝处理滥用的ISP。

令人惊讶的是,如果您正确和负责任地做到这一点,大多数ISP将与您合作。 他们不会识别你的用户,但他们会处理用户。

如果他通过代理连接,禁止代理。

这可能会也可能不会工作,但它是关于你所有的。

你不能,真的。

我的第一个build议是,如果你有他的原始IPlogging,向他的ISP报告滥用,并试图让他的服务被取消或暂停。 这将根据ISP的不同而有所不同,但可能会非常有帮助。 如果没有…

你可以使用cookies,Flash cookies或者浏览器指纹来记住他的IP,但是这些很容易绕过。 一个更先进的,但同样容易绕过禁令(只要他知道要寻找什么)是捕获他的MAC地址,并禁止。

您也可能想要考虑禁止免费的公共可用的代理服务器的IP,并禁止使用已知的免费networking邮件提供商的名单来减less他的选项,但是即使如此,与VPN提供商的便宜帐户和/或一个晦涩的networking邮件提供商可以绕过这些。

做所有这些都是有效的,但是一个决定性的巨人将会穿越这些障碍,而且根据我的经验,唯一真正有效的工作就是调整新的用户注册,并且导致合法的新用户被赶走。 你可以一直禁止他,直到他疲惫不堪,并发现其他东西来捕捉他的兴趣(像一个shiny的物体)。

如果他真的是一个大问题,你可以使用cookies和/或浏览器指纹识别他的身份,并将他redirect到只有他可以看到的站点的副本或使他的post和活动只有可读 – 所以他可以巨魔直到他感到无聊,以为他是绕过禁令,但实际上,你已经为他创造了一个私人的小沙箱,没有其他人受到他的废话影响。 我以前用一些更麻烦的论坛巨魔来做这件事,但是除非他们真的很执着,真的很卑鄙,那么比我们更值得,IMHO。

阅读http://www.codinghorror.com/blog/2011/06/suspension-ban-or-hellban.html

你可以尝试通过IP来阻止用户。

对于所有其他用户来说,隐藏的用户是不可见的,但关键的不是他自己。 从他们的angular度来看,他们通常在社区参与,但没有人回应他们。 他们不能再破坏社区,因为他们实际上是一个鬼。 这是执行社区中“不要喂养巨魔”规则的聪明方式。 当他们没有发表任何回应时,一个受过伤害的用户很可能会感到无聊或沮丧而离开。 我也相信 如果我从孩子读“大脑”的时候就学到了什么,沉默的对待就是对他们最残忍的惩罚。

这个想法是他不会知道他实际上是被禁止的,也不会再打扰他的知识产权。

你也可以尝试实现一个基于Flash的“cookie”。 这些不同于普通的HTTP cookies,因为当浏览器cookies被删除时,一些浏览器不会删除它们。 (更多信息: http : //en.wikipedia.org/wiki/Local_shared_object )