ipset是什么?
ipset是iptables的扩展,它允许你创建 匹配整个地址集合的规则。而不像普通的iptables链只能单IP匹配, ip集合存储在带索引的数据结构中,这种结构即时集合比较大也可以进行高效的查找,
除了一些常用的情况,比如阻止一些危险主机访问本机,从而减少系统资源占用或网络拥塞,IPsets也具备一些新防火墙设计方法,并简化了配置.
官网:http://ipset.netfilter.org/
1、ipset安装

yum安装: yum install ipset
源代码安装:进官网下载ipset-6.30.tar.bz2 ,
yum -y install libmnl-devel libmnl
tar -jxvf ipset-6.30.tar.bz2  && cd ipset-6.30 && ./configure --prefix=/usr/local/ipset && make && make install   完成安装

2.创建ipset集合:

[root@localhost ~]# which ipset
/usr/sbin/ipset
[root@localhost ~]# ipset --list
[root@localhost ~]# ipset create zabbix_server hash:net
[root@localhost ~]# ipset add zabbix_server 192.168.1.20
[root@localhost ~]# ipset create mysql_server hash:net
[root@localhost ~]# ipset add mysql_server 192.168.1.20
[root@localhost ~]# ipset --list
Name: zabbix_server
Type: hash:net
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 16784
References: 0
Members:
192.168.1.20Name: mysql_server
Type: hash:net
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 16784
References: 0
Members:
192.168.1.20

3.保存规则到ipset文件:

[root@localhost ~]# /etc/init.d/ipset save
ipset: Saving IP sets to /etc/sysconfig/ipset:             [确定][root@localhost ~]# cat /etc/sysconfig/ipset
create zabbix_server hash:net family inet hashsize 1024 maxelem 65536
add zabbix_server 192.168.1.20
create mysql_server hash:net family inet hashsize 1024 maxelem 65536
add mysql_server 192.168.1.20

4.iptables规则文件:

[root@localhost ~]# cat /etc/sysconfig/iptables
#Generated by iptables-save v1.4.7 on Wed Jul 31 10:21:39 2019
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [10988:6938377]
-A INPUT -s 118.32.234.103/32 -j DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m multiport --dports 80,81,82,443 -m state --state NEW -j ACCEPT
-A INPUT -s 211.144.68.140/32 -p tcp -m multiport --dports 10050,3306 -j ACCEPT
-A INPUT -p tcp -m set --match-set zabbix_server src -m tcp --dport 10050 -j ACCEPT
-A INPUT -p tcp -m set --match-set mysql_server src -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp -m multiport --dports 570,21,1038 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -m limit --limit 5/sec --limit-burst 10 -j ACCEPT
-A INPUT -j DROP
COMMIT

5.命令行添加iptables规则并保存:

iptables -I INPUT -m set --match-set mysql_server src -p tcp -m multiport --dports 10050,3306 -j ACCEPT
iptables -I INPUT -m set --match-set rsync_server src -p tcp              --dport 873 -j ACCEPT
service iptables save
/etc/init.d/iptables save

6.ipset del使用:

ipset del删除规则时,必须重启iptables服务才会生效

ipset del jump_mysql 111.206.110.202
重启iptables才能生效

ipset add 添加规则时,不用重启iptables 就会生效

iptables之ipset使用介绍相关推荐

  1. iptables结合ipset禁止国外IP进行访问

    0x01 ipset 可以使用iptables对访问地址进行一定的限制,但是当受限地址数量过多时,维护管理起来就不太方便,而且数量过多的iptables条目也会影响设备的性能.此时就可以使用ipset ...

  2. centos----只需三条命令利用iptables和ipset长期封禁ip和临时封禁ip

    只需三条命令利用iptables和ipset长期封禁ip和临时封禁ip 下面的是临时封禁ip,请根据自己的情况修改,比如最后登录失败的2000条记录,截取失败次数最多的前60名 [root@cento ...

  3. linux 防火墙: 从 iptables 到 ipset 的过滤ip

    一 iptables 了解 iptables,可以将规则组成一个列表,实现绝对详细的访问控制功能工作在用户空间中,定义规则的工具,本身并不算是防火墙.它们定义的规则,可以让在内核空间当中的netfil ...

  4. php zhxing iptables,Linux iptables 扩展 ipset 使用教程

    iptables介绍 Iptables是在linux内核里配置防火墙规则的用户空间工具,它实际上是netfilter框架的一部分.可能因为iptables是netfilter框架里最常见的部分,所以这 ...

  5. ipset命令介绍与基本使用

    一. 介绍 ipset命令是用于管理内核中IP sets模块的,如iptables之于netfilter.ipset字面意思是一些IP地址组成一个集合(set).但是ipset用于用于存储IP地址,整 ...

  6. netfilter/iptables模块功能中文介绍

    功能介绍 (每个info和help本是英文的,为方便阅读我把它翻译成中文,由于水平有限,如果有误请有经验者来信指正) 获取最新patch-o-matic-ng的地址:[url]ftp://ftp.ne ...

  7. Linux iptables 防火墙相关命令介绍及使用

    一.  Linux 防火墙的启动和关闭 1.1 启动命令 [root@singledb ~]# service iptables stop Flushing firewall rules:       ...

  8. 使用iptables和ipset实现大量屏蔽恶意IP地址

    https://blog.csdn.net/qq_44880708/article/details/104614737

  9. 网站维护:利用iptables和ipset屏蔽恶意IP的访问

    https://cuijiahua.com/blog/2018/11/website-22.html

最新文章

  1. mysql5.5.20安装图解_mysql5.5.20的安装步骤
  2. 将redis当做使用LRU算法的缓存来使用
  3. 【HDU - 5882】Balanced Game (找规律,思维)
  4. 自已开发完美的触摸屏网页版仿app弹窗型滚动列表选择器/日期选择器
  5. 书摘---创业36条军规1:创业是怎么回事
  6. AI语音入门:认识词错率WER与字错率CER
  7. QImage对一般图像的处理
  8. 2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件
  9. HDU-3337 Guess the number 测试输入数据
  10. html打印强制分页
  11. 十大门店进销存管理系统软件测评,秦丝长年稳居榜首
  12. 在线生成android ios icon,一键生成Android/Android-HD/IOS 多尺寸ICON
  13. Yii使用 case when 来模糊排序查询
  14. 一种兼顾速度和效果的对比度增强算法——CONTRAST ENHANCEMENT BASED ON LAYERED DIFFERENCE REPRESENTATION
  15. /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
  16. 【Unity3D 问题总结】Failed to import package with error: Couldn‘t decompress package
  17. SNS网站LinkedIn的Java架构技术
  18. 非对称加密和对称加密的优缺点
  19. LeetCode刷题:871. Minimum Number of Refueling Stops
  20. win8 开发之旅(19) --足球游戏揭秘5

热门文章

  1. 为什么要使用独立游戏服务器
  2. 毕业设计总结篇之开题篇——基于android的创意展示平台(混合app)
  3. Android常见绕过屏锁小技巧汇总
  4. 【Linux】grub2基础教程
  5. C# FileStream简单介绍和使用
  6. 利用ajax提交form表单数据
  7. 中国石油大学计算机科学与技术论文,中国石油大学(计算机科学与技术专业)毕业论文规范.doc...
  8. 7-3 打印指定大小的表格 (10 分)
  9. Selector的wakeup()
  10. ubuntu 修改网卡名