0

我正在运行一个 asp.net mvc 网站,我想阻止每个通过 TOR 访问我的网站的用户。现在我有两个解决方案:

  1. 每小时下载一次 TOR 出口节点列表,将该列表存储在内存中,并使用该列表检查每个请求 IP 地址。
  2. 尝试使用 Windows 防火墙阻止 TOR 出口节点 - 我认为这会更好,但我不知道该怎么做。

还有其他可能的解决方案吗?你们中的任何人可能有与我类似的问题吗?你是怎么解决的?

4

2 回答 2

2

答案绝对是您列出的第二个选项。无论您使用哪种解决方案,您都必须经常下载已知出口节点 IP 的列表,但使用已经存在的防火墙比滚动您自己的原始副本要简单得多。

如何将 IP 添加到防火墙取决于您的 Windows 版本。可以在此处找到以前的 StackOverflow 问题,其答案包括解释如何通过 Windows Server 2008 防火墙以编程方式阻止 IP 地址的链接。

于 2012-12-05T01:21:19.393 回答
1

这里( https://github.com/RD17/DeTor ) 是一个简单的 REST API,它使用TorDNSEl来确定请求是否来自 TOR 网络。例如,我认为从 C# 和 RESTSharp 中使用它会非常简单。

请求是: curl -X GET http://detor.ambar.cloud/

回应是 { "sourceIp": "104.200.20.46", "destIp": "89.207.89.82", "destPort": "8080", "found": true }

作为奖励,您可以向您的网站添加徽章以检测用户是否来自 TOR:

<img src='http://detor.ambar.cloud/badge' />

于 2017-07-07T07:37:30.233 回答