查看: 3352|回复: 2

[教程] 基于APNIC的IP数据库的亚太地区白名单方案

[复制链接]
发表于 2022-6-4 17:53:36 | 显示全部楼层 |阅读模式
本帖最后由 zzx 于 2022-6-4 17:58 编辑

     APNIC,是为亚太互联网络信息中心,负责亚太地区的IPv4/v6地址的初始分配和ASN(公共区域自治号码)的分配,包括部分在亚洲的DNS根镜像服务器的管理,咱们国内的CNNIC是其下属单位,每个运营商和每个需要自成一体的个人和组织,第一步都需要去到APNIC下属的CNNIC,或者直接到APNIC申请ASN公共区域自治号码和IPv4/v6地址,所以在这个组织下的IP数据库,无疑是目前亚洲地区的IP数据库界最全面的一个。     同样还是先开启万由的SSH权限和root登陆权限,先通过SSH登陆进万由,该套方案逃逸率仅在2%-3%,可以有效杜绝绝大部分恶意的国际问候。(没有100%能够屏蔽的,毕竟目前五大网络中心是允许ASN持有者和运营商,拿着属于自己的IP地址随便去广播,至于广播何处,那就不得而知了)
一.安装IPSET这个批量执行工具
   apt-get -y install ipset
二.再拉取APNIC的IP地址库   wget -c http://ftp.apnic.net/stats/apnic/delegated-apnic-latest(如果拉取失败,可以用迅雷先行下载,再上传进万由)
三.挑出国内IP   
cat delegated-apnic-latest | awk -F '|''/CN/&&/ipv4/ {print $4 "/" 32-log($5)/log(2)}' | teechinaip.txt(其他友好地区则将CN换成地区简称,并将txt名称改成友好地区名称简称)
四.创建规则#创建一个国内的规则   
ipset -N cnip hash:net(其他友好地区请改cnip为其他友好地区简称)
五.将挑出来的IP地址库添加进规则   
for i in $(cat /root/chinaip.txt ); do ipset -A cnip $i; done
六.设置IP段白名单#放行IP段   iptables -A INPUT -p tcp -m set --match-set cnip src -j ACCEPT  
                                               iptables -A INPUT -p udp-m set --match-set cnip src -j ACCEPT
                                               iptables -A INPUT -p icmp -m set --match-set cnip src -j ACCEPT
七.关掉所有端口  iptables -P INPUT DROP
注意,这个目前有一个很大的缺陷,就是关机后将自动失效,需要再次从四执行到七。
注意,目前该套方案,仅支持Debian系,介于万由基于Debian,所以顺理成章的能够使用。
回复

使用道具 举报

发表于 2022-9-24 08:17:21 | 显示全部楼层
学习
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-12-4 14:23:41 | 显示全部楼层
来填巨坑,这个方案可能会导致内网无法访问,需要通过编写带有已宣告的私网IP地址块的txt文本,然后按照
第四到第六开始,期间请将cn的名称改成你自己命名的txt文本的名字,然后使防火墙持久化,亦需要安装一个套件,进到SSH后台后执行apt install iptables-persistent,弹出提示框后直接两下回车,然后四和六的步骤执行完成后则执行持久化防火墙命令netfilter-persistent  save,即可持久化。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|万由科技 ( 浙ICP备10004788号-13 )

GMT+8, 2024-4-26 06:09 , Processed in 0.062728 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表