即时通讯使用CentOS 7。
在使用Cloudflare获取后端服务器上的真实访问者IP然后通过iptables限制真实用户IP连接时,是否还有可能?
因为现在它不可能,因为它只会限制Cloudflares IP而不是用户IP。
已经尝试使用mod_cloudflare但没有成功的结果。
例:
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
将打印所有Cloudflare IP而不是真正的访客IP ..
我需要它,因为僵尸网络只是从网站请求一个“legite”URL,但是僵尸网络确实是如此之快,以至于网络服务器无法处理它。
希望得到一些帮助,希望您理解我的问题/问题。
mod_cloudflare是为apache Web服务器设计的模块。它实际上会显示您的网站访问者的真实IP地址,但这通过使用netstat
命令严格地发生在不在Linux系统上的apache访问日志中。如果您使用netstat
,它将显示来自CloudFlare的IP地址。
mod_cloudflare使用一些特定的HTTP标头(CF-Connecting-IP)来显示访问者的真实IP地址。
有关HTTP标头的更多信息,请访问:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers
您应该尝试从Web服务器日志中提取所需的信息,而不是使用netstat
更新:
您可以使用CSF防火墙,该防火墙附带一个使用Cloudflare API的功能,并将ip块直接添加到Cloudflare中,而不是阻止服务器上的IP。正如我之前所说,mod_cloudflare将在Web服务器日志中显示真实的ips,而在服务器上,您将始终看到来自Cloudflare的IP地址。然而,CSF使用的是mod_cloduflare,从Web服务器日志中提取真实IP地址,并使用Cloudflare API在Cloudflare防火墙中直接在这些IP地址或范围上添加块。
你可以在这里阅读更多关于CSF的信息(第27章):https://download.configserver.com/csf/readme.txt
请记住,Cloudflare的防火墙中有1000个IP地址或范围的标准限制(至少对于免费帐户)。当您达到1000时,您必须删除旧条目,以便添加更多条目。