随手笔记:linux-CentOS ipset + iptable 屏蔽IP及IP组

任务总览

  1. 屏蔽占用大量带宽的discuz灌水机器人
  2. 屏蔽尝试扫描网站上传文件的机器人
  3. 重启后自动重新配置屏蔽条件,不会丢失

开始任务

安装 ipset

yum install ipset

配置规则

ipset create discuz_rebort hash:net
ipset create scan_upload_package hash:net

# CIDR
ipset add scan_upload_package 180.97.106.0/24

# IP
ipset add discuz_rebort 46.118.158.40
ipset add discuz_rebort 46.118.125.133
ipset add discuz_rebort 134.249.55.141
ipset add discuz_rebort 178.137.161.254
ipset add discuz_rebort 185.234.216.41
ipset add discuz_rebort 173.239.236.63

# 保存规则
iptables -I INPUT -m set --match-set discuz_rebort src -p tcp -j DROP
iptables -I INPUT -m set --match-set scan_upload_package src -p tcp -j DROP

# 删除单个规则
iptables -D INPUT -m set --match-set discuz_rebort src -p tcp -j DROP

论坛屏蔽IP列表参考:http://www.stopforumspam.com/stats

保存配置

yum install iptables-services

# 创建文件夹
mkdir /etc/iptables.d
mkdir /etc/ipset.d

# 保存 iptables 规则
service iptables save
service iptables restart

# 保存 ipset 规则
ipset save -f /etc/ipset.d/forbiden.sh

重启自动配置

重新配置 ipset 需要的脚本
vim /etc/ipset.d/onboot.sh

/etc/ipset.d/onboot.sh 写入如下内容

ipset restore -f /etc/ipset.d/forbiden.sh
重新配置 iptables 需要的脚本
# 重新 ipset 配置需要的脚本
vim /etc/iptables.d/onboot.sh

/etc/ipset.d/onboot.sh 写入如下内容

/etc/ipset.d/./onboot.sh
service iptables restart
配置系统启动自动运行
vim /etc/rc.d/rc.local

/etc/rc.d/rc.local 追加如下内容

/etc/iptables.d/./onboot.sh
赋予运行权限
chmod +x /etc/ipset.d/onboot.sh
chmod +x /etc/iptables.d/onboot.sh
chmod +x /etc/rc.d/rc.local

备注

CentOS 7 后新增firewalld,性能在iptables之上,有待进一步学习。可能的学习资料:
4.5. 使用防火墙 - Red Hat Customer Portal

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值