嘟嘟社区

分享个生成仅允许cloudflare ip访问nginx的规则的生成脚本


弄了个自用图床 就俩图片就一直被刷

https://hostloc.com/thread-1007087-1-1.html

没办法 套上了cf 弄了个脚本 自动更新cf的ip  仅允许cf访问服务器

用户请求必须通过cf才能访问到服务器 否则直接403

网上抄的

  1. #!/bin/bash
  2. set -e
  3. cf_ips() {
  4.   echo "# https://www.cloudflare.com/ips"
  5.   for type in v4 v6; do
  6.     echo "# IP$type"
  7.     curl -sL "https://www.cloudflare.com/ips-$type/" | sed "s|^|allow |g" | sed "s|$|;|g"
  8.     echo
  9.   done
  10.   echo "# Generated at $(LC_ALL=C date)"
  11. }
  12. #cf_ips > /usr/local/nginx/conf/cf.conf
  13. (cf_ips && echo "deny all; # deny all remaining ips") > /usr/local/nginx/conf/cf.conf
  14. nginx -s reload

复制代码

生成后 在ngixn里面的server里面 Include就行了

  1. include cf.conf;

复制代码

然后加入crontab 一小时自动刷新一次

  1. 0 *  * * *  /root/allow_cf.sh > /dev/null

复制代码

可以直接iptables 80 443仅允许cf
用nginx会不会性能影响大了点,用iptables干掉不是更省吗

好鸭 发表于 2022-4-25 11:34
用nginx会不会性能影响大了点,用iptables干掉不是更省吗

iptable有自动化脚本没?

CF的速度太慢了
用iptable吧,阻止cf以外的IP访问80和443。

jhsyue 发表于 2022-4-25 11:39
iptable有自动化脚本没?

https://github.com/drvy/ufw-cloudflare
https://github.com/kingcc/cloudflare-ips-only

你有没有测试过?据俺所知,配置nginx规则,爬虫依旧能通过探测证书 SNI 信息来找到你的源站服务器。

取个什么名好呢 发表于 2022-4-25 11:48
你有没有测试过?据俺所知,配置nginx规则,爬虫依旧能通过探测证书 SNI 信息来找到你的源站服务器。 …

知道也没用,都屏蔽了IP访问了。

啥图片这么能刷