iptable + ipset 封禁大量ip(指定区域)
690
|
2019-11-02 17:47:00
背景:最近公司项目需要禁止指定省市的ip访问
(ip段是从某网站爬的,加起来大约15万ip段)
系统centos 7.2
1.安装iptables (centos7 默认安装)
2.安装ipset
注:如果提示找不到资源包请先执行 yum update
3.创建黑名单
这里使用的是hash:net 因为涉及到了ip段 最多储存1000000条
将要封禁的ip或IP段添加到黑名单
4.创建iptables规则
注解 -d 后面的 *.*.*.* 为服务器的ip,如果是单ip服务器则不需要(这台服务器为多ip多域名的,业务要求封禁单个域名,其他不受影响) -m multiport 匹配多个端口,也就是后面的80,443
ipset 保存在内存中,重启之后就没有了,所以需要保存为文件,重启之后恢复
可以将恢复命令加入到开机自启 /etc/rc.loacl 中,该文件需要有执行权限
其他