plnd avatar

Configure nginx to only allow cloudflare's IP to connect to the server shell script

🕙 by plnd

Configure nginx to only allow cloudflare's IP to connect to the server shell script

Bash:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

#!/bin/bash

set -e

cf_ips() {
  echo "# https://www.cloudflare.com/ips"

  for type in v4 v6; do
    echo "# IP$type"
    curl -sL "https://www.cloudflare.com/ips-$type/" | sed "s|^|allow |g" | sed "s|\$|;|g"
    echo
  done

  echo "# Generated at $(LC_ALL=C date)"
}

#cf_ips > /usr/local/nginx/conf/cf.conf 
(cf_ips && echo "deny all; # deny all remaining ips") > /etc/nginx/conf/cf.conf

nginx -s reload or service lsws restart

chmod +x cf.sh ./cf.sh

💘 相关文章

写一条评论