通过防火墙设置仅允许CDN访问源站
使用 CDN,一般都是出于加速和安全防护的目的,但是即使套了CDN,也有可能有恶意请求直接绕过CDN直接访问源站,导致CDN的相关防护措施失效。
那么如何使恶意请求无法绕过CDN直接访问源站呢?只需要在服务器上通过防火墙设置仅响应CDN节点的IP的请求即可。
下面是通过Firewalld防火墙限制只允许特定IP段访问80端口的代码:
firewall-cmd --permanent --new-ipset=cdn --type=hash:ip firewall-cmd --permanent --ipset=cdn --add-entry=173.245.48.0/20 firewall-cmd --permanent --ipset=cdn --add-entry=103.21.244.0/22 firewall-cmd --permanent --ipset=cdn --add-entry=103.22.200.0/22 firewall-cmd --permanent --ipset=cdn --add-entry=103.31.4.0/22 firewall-cmd --permanent --ipset=cdn --add-entry=141.101.64.0/18 firewall-cmd --permanent --ipset=cdn --add-entry=108.162.192.0/18 firewall-cmd --permanent --ipset=cdn --add-entry=190.93.240.0/20 firewall-cmd --permanent --ipset=cdn --add-entry=188.114.96.0/20 firewall-cmd --permanent --ipset=cdn --add-entry=197.234.240.0/22 firewall-cmd --permanent --ipset=cdn --add-entry=198.41.128.0/17 firewall-cmd --permanent --ipset=cdn --add-entry=162.158.0.0/15 firewall-cmd --permanent --ipset=cdn --add-entry=104.16.0.0/12 firewall-cmd --permanent --ipset=cdn --add-entry=172.64.0.0/13 firewall-cmd --permanent --ipset=cdn --add-entry=131.0.72.0/22 firewall-cmd --permanent --add-rich-rule='rule source ipset=cdn port port=80 protocol=tcp accept' firewall-cmd --reload
查看所有允许的CDN的IP:
firewall-cmd --info-ipset=cdn
原文链接地址:http://blog.exsvc.cn/article/only-allow-cdnip-by-firewalld.html
转载请注明:转载自 易科博客 ,谢谢!