Iptable 使用ipset设置防火墙端口白名单,只让指定国家访问
DNS屏蔽
查看dns域名解析商线路选择(略)
黑名单屏蔽
首先需要得到国家IP段,下载地址:http://www.ipdeny.com/ipblocks/。这里以我们国家为例。
安装ipset
#Debian/Ubuntu系统
apt-get -y install ipset
#CentOS系统
yum -y install ipset创建规则
#创建一个名为cnip的规则
ipset -N cnip hash:net
#下载国家IP段
wget -P . http://www.ipdeny.com/ipblocks/data/countries/cn.zone
#将IP段添加到cnip规则中
for i in $(cat /root/cn.zone ); do ipset -A cnip $i; done开始屏蔽
解除屏蔽
一键执行
为了便于实时,这里我写了个脚本,可以一键执行。适用于CentOS、Debian、Ubuntu等常用系统
封禁ip时会要求你输入国家代码,代码查看:点击进入。记住所填参数均为小写字母。比如JAPAN (JP),我们就输入jp这个参数。注意:封禁国内时要特别注意,如封禁国内会造成登录服务器失败
演示
封禁IP

查看封禁列表

解封IP

白名单屏蔽
有同学会说国外那么多国家,我不可能一个个国家去进行屏蔽吧。只需要国内访问或个别几个国家访问。那就选择白名单,把允许的几个国家加入白名单中,其他全部屏蔽掉即可。已中国为例:
获取列表
一键执行
脚本一
脚本二
Last updated