firewalld封禁IP或IP段

1、firewalld直接封禁某一个ip或ip段

1.1封禁单个ip

$ firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='x.x.x.x' reject"

#1.2 封禁IP段

$ firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='x.x.0.0/16' reject"

$ firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='x.x.x.0/24' reject"

使用上面没什么问题,只不过一旦大量ip需要拉黑,管理上就会很混乱。因此这里介绍firewalld配置ipset来实现。

2、firewalld配置ipse封禁某一个ip或ip段

2.1 创建ipset

$ firewall-cmd --permanent --zone=public --new-ipset=blacklist --type=hash:net

创建一个名为blacklist的库,执行完命令可在/etc/firewalld/ipsets路径下看到生成的blacklist.xml文件。

2.2 添加/删除要禁止的ip或ip段

#添加ip

$ firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=x.x.x.x

#添加ip段

$firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=x.x.x.0/24

#删除ip

$firewall-cmd --permanent --zone=public --ipset=blacklist --remove-entry=x.x.x.x

#删除ip段

$firewall-cmd --permanent --zone=public --ipset=blacklist --remove-entry=x.x.x.0/24

备注: --permanent参数表示永久生效,内容会写入blacklist.xml文件且需要重启防火墙;

firewall-cmd --reload生效,如果不加该参数,则立即生效,内容不会写入blacklist.xml文件,服务重启则规则失效。

2.3封禁名为blacklist的ipset

$ firewall-cmd --permanent --zone=public --add-rich-rule='rule source ipset=blacklist drop'

前面只是创建了名为blacklist的ipset,而且也往里面增加了内容,最后一步即防火墙封禁该ipset即可,这样的好处是防火墙只是一条规则就封禁了文件里管理的大量ip。

2.4重新载入防火墙即可生效:

firewall-cmd --reload

2.5查看当前防火墙状态:

firewall-cmd --list-all

2.6单独查看当前ipset封禁了哪些ip:

ipset list blacklist

相关推荐
守望时空334 分钟前
Linux挂载NTFS分区指南
linux
shan~~1 小时前
linux达梦数据库操作
linux·数据库·chrome
liliangcsdn1 小时前
LLM时代基于unstructured解析非结构化pdf
linux·服务器·数据分析
hello_2501 小时前
动手模拟docker网络-bridge模式
网络·docker·桥接模式
Codigger官方1 小时前
Linux 基金会牵头成立 React 基金会:前端开源生态迎来里程碑式变革
linux·前端·react.js
武文斌771 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
爱吃喵的鲤鱼2 小时前
仿mudou——Connection模块(连接管理)
linux·运维·服务器·开发语言·网络·c++
让子弹飞022 小时前
永久解决ubuntu网络连接问题
linux·运维·ubuntu
爱吃小胖橘2 小时前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
郝学胜-神的一滴2 小时前
使用Linux的read和write系统函数操作文件
linux·服务器·开发语言·数据库·c++·程序人生·软件工程