我们可以通过安装Nginx
的 ngx_http_realip_module
模块获取到了用户真实的IP
地址,但是有的时候我们需要借助Cloudflare
的安全防护功能来防止CC
或者DDoS
攻击,即仅允许Cloudflare
CDN
的IP
访问我们的访问。
Nginx
直接拒绝和允许IP
访问代码示例如下:
location / { deny 192.168.1.1; allow 192.168.1.0/24; allow 10.1.1.0/16; allow 2001:0db8::/32; #Railgun IP deny all; }
如果我们仅允许Cloudflare
CDN
的IP
访问网站,我们可以直接在Nginx
配置中将Cloudflare
CDN
的IP
添加到允许的范围内。
#直接加入 # https://www.cloudflare.com/ips # IPv4 allow 103.21.244.0/22; allow 103.22.200.0/22; allow 103.31.4.0/22; allow 104.16.0.0/12; allow 108.162.192.0/18; allow 131.0.72.0/22; allow 141.101.64.0/18; allow 162.158.0.0/15; allow 172.64.0.0/13; allow 173.245.48.0/20; allow 188.114.96.0/20; allow 190.93.240.0/20; allow 197.234.240.0/22; allow 198.41.128.0/17; # IPv6 allow 2400:cb00::/32; allow 2405:8100::/32; allow 2405:b500::/32; allow 2606:4700::/32; allow 2803:f800::/32; allow 2c0f:f248::/32; allow 2a06:98c0::/29;
如果你启用了Cloudflare
Railgun
动态加速,记得将Railgun
的服务器IP
加入到配置当中,因为启用了Railgun
后网站获取到的IP
地址都来自Railgun
服务器上的。
本文由 podipod软库网 作者:DevOps 发表,转载请注明来源!