我在Wordpress上为一个初创SaaS产品开发和管理一个小型促销/营销网站。我们使用Cloudflare进行DNS等等。显然,WAF已经打开,它使用代理并更改用户的IP地址。我正试图使用IP地址来过滤谷歌分析的"内部"流量,唯一的方法是关闭WAF。如果不使用WAF会给我的网站带来任何重大风险,那么显然我需要另一种方法来进行分析。阅读他们网站上提供的内容并不能让我清楚地知道它对这样的网站有多重要。如果任何"明白"的人有一些见解可以分享,我将不胜感激。thx!
您绝对应该使用WAF-它将保护您的网站免受许多恶意机器人程序和攻击。
Wordpress网站是攻击者特别有利可图的目标,原因有很多:
-
默认Wordpress安装的安全性不高。
-
每个Wordpress网站都共享常见的默认功能,例如管理员登录页面的位置、管理员用户名和其他可利用资源。
-
Wordpress非常受欢迎,目前估计有三分之一的网站在使用它。
-
Wordpress被许多小企业和业余爱好者使用,他们不知道如何正确保护自己的网站。
Ergo,攻击者可以很容易地在网络上搜索Wordpress网站,这些网站很容易被黑客攻击。其他邪恶的活动通常在大多数Wordpress网站上轻松进行,如评论垃圾邮件或拒绝服务攻击。
WAF提供什么保护
Cloudflare和大多数其他高质量WAF可以配置为通过自动执行以下操作来保护您的网站:
- 阻止已知的坏IP地址
- 阻止自动向您的网站发出请求的坏机器人
- 在短时间内限制来自一个源的大量请求(通常是DoS攻击或刮擦的迹象(
- 阻止来自特定国家或地区的请求
如果您可以使用此保护,您没有理由不启用它,Cloudflare是该领域的行业领导者。
此外,我建议你研究如何通过WAF以外的方式更好地保护你的Wordpress网站,例如终极Wordpress安全指南
如何解决IP地址问题
Cloudflare不会更改用户(客户端(的IP地址,而是充当代理。正如您所注意到的,您看到的IP地址不是客户自己的,而是Cloudflare的一个。这对于Cloudflare如何保护您的网站至关重要,但在使用任何类型的代理时,这都是一个常见的问题。
要在使用代理时获得正确的IP地址,需要检查X-FORWARDED-FOR
标头。您可能会将其视为逗号分隔的IP地址字符串,这取决于用户在到达网站之前经过了多少代理。列表中的第一个是原始客户端IP。
例如,这里203.0.113.1
是客户端的原始IP地址:
X-Forwarded-For: 203.0.113.1,198.51.100.101,198.51.100.102
文档:Cloudflare如何处理HTTP请求标头?
无论如何,最好使用一个功能,该功能可以全面检查标头,并为您提供与原始客户端IP的最佳匹配,无论用户是否支持代理,这样您就可以保证它始终有效。
这里有一个非常流行的StackOverflow问题:
检索用户的最准确方法是什么';PHP中的正确IP地址是什么?