2012-10-22 198 views
3

好的,所以我们在生产中实施了Recaptcha。我们遇到错误是因为它无法达到使用该服务所需的IP地址。我们为IP地址开放一个端口以访问Google。没问题。我们这样做并明确配置该IP地址才能工作。它效果很好。然后,第二天,我们又开始发生错误,因为Recaptcha正在使用不同的 IP地址。我也可以允许来自该IP地址的请求,但现在我不安。这些地址来自哪里?我如何配置它以可靠地工作?Recaptcha IP地址

+1

你可以使用主机名吗? – Wug

+0

这是DNS的用途 – m0skit0

回答

0

也许你应该使用主机名,而不是IP

+0

是的,但是我没有办法配置它。这些IP地址似乎从无处不在。 –

4

Recatpcha从谷歌可以使用任何谷歌的IP地址,并有很多人。

跑这从Windows:

_netblocks.google.com文本= NSLOOKUP型= TXT _netblocks.google.com “V = SPF1 IP4:216.239.32.0/19 IP4:64.233.160.0/19 ip4:66.249.80.0/20 ip4:72.14.192.0/18 ip4:209.85.128.0/17 ip4:66.102.0.0/20 ip4:74.125.0.0/16 ip4:64.18.0.0/20 ip4:207.126.144.0/20 ip4 :173.194.0.0/16?all“

这就是Google目前使用的所有网络。这些可以改变,所以经常检查它们。

谷歌建议允许端口80到所有IP出站,这是非常不安全的。他们建议通过代理服务器,但如果您的Web服务器是DMZ,那么这又是非常不安全的。具有代理意识的木马确实存在。所有需要做的就是利用漏洞执行任意代码,并且您可以通过代理服务器在端口80上创建反向连接以下载有效负载。然后升级权限并拥有该框是微不足道的。我不只是指Windows服务器,还有Linux。我已经在实验室环境中进行了安全性测试。这很容易做到。

这是谷歌的网站,我得到这个来自:

http://code.google.com/p/recaptcha/wiki/FirewallsAndRecaptcha

1

我想附加到这个答案与更多的最新信息。该Chris指向不包括所有的TXT的文件记录需要挖掘(感谢谷歌):

  • _netblocks2.google.com(IPv6子网)
  • _netblocks3.google.com(附加的IPv4子网)

在我的特殊情况下,_netblocks3条目包含2个大/ 19的,使我无效

初始规则(我发现这里的附加参考:https://support.google.com/a/answer/60764?hl=en