首页 > 其他分享 >ipset的学习与使用

ipset的学习与使用

时间:2023-05-01 14:55:44浏览次数:33  
标签:set SETNAME ipset cmd 学习 -- 使用 firewall

ipset的学习与使用


场景说明

虽然可以通过:
firewall-cmd  --zone=trusted --add-source=$1 --permanent && firewall-cmd --reload
或者是
firewall-cmd --zone=public --add-port=$1/tcp --permanent && firewall-cmd --reload
为ip地址和端口开放里面, 但是每次还需要进行一下reload.  如果条目数过多之后
防火墙的reload和性能都不是特别好. 
最近在看博客, 突然发现有一个ipset的方式. 更加简单. 
也更利于实现单独的ip设置, 动态增删等. 

ChatGPT怎么说

ipset 是一个基于内核的数据结构,它可以用于管理 iptables 规则。
ipset 可以通过自定义集合来代替直接写入 iptables 规则。
这些集合可以包括 ip 地址、端口号、mac 地址等成员,并且可以在多个规则中重复使用,
从而简化了管理和维护的工作。
使用 ipset 命令创建、修改和删除集合,还可以将集合成员添加到集合中或从集合中移除成员。
在 iptables 规则中使用集合时,只需要引用集合的名称即可,而不必列出集合中的每个成员。

总之,ipset 是一个强大的工具,可以帮助用户管理 iptables 规则并加快网络流量过滤的速度。

安装

好像 centos 系列都会默认安装 ipset
ubuntu的机器可以使用 apt-get install ipset -y 的方式进行安装
centos的机器可以使用
yum install ipset -y 方式进行安装.
方式比较简单. 可以直接进进行使用. 

简介

帮助部分:
create SETNAME TYPENAME [type-specific-options]
        Create a new set
add SETNAME ENTRY
        Add entry to the named set
del SETNAME ENTRY
        Delete entry from the named set
test SETNAME ENTRY
        Test entry in the named set
destroy [SETNAME]
        Destroy a named set or all sets
list [SETNAME]
        List the entries of a named set or all sets
save [SETNAME]
        Save the named set or all sets to stdout
restore 
        Restore a saved state
flush [SETNAME]
        Flush a named set or all sets
rename FROM-SETNAME TO-SETNAME
        Rename two sets
swap FROM-SETNAME TO-SETNAME
        Swap the contect of two existing sets
help [TYPENAME]
        Print help, and settype specific help
version 
        Print version information
quit 
        Quit interactive mode

部分命令的使用

ipset create whitelist hash:ip
ipset create blacklist hash:ip
# 创建一个空的白名单. 
iptables -I INPUT -m set --match-set whitelist src -j ACCEPT
# 白名单设置为接收
iptables -I INPUT -m set --match-set blacklist src -j DROP
# 黑名单设置为拒绝. 

firewall-cmd 设置 ipset 的方式

firewall-cmd --get-ipset-types
获取支持的 ipset类型列表
firewall-cmd --get-ipsets
获取当前所有的ipset
firewall-cmd  --zone=trusted  --permanent --add-source=ipset:ipsetname
将某ipset 增加到特定区域中
firewall-cmd --add-rich-rule='rule source ipset=blacklist drop'
设置黑名单 drop
firewall-cmd --zone=public --add-rich-rule='rule source ipset=whitelist accept'
设置白名单 接收
firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source ipset=whitelist port port=22 protocol=tcp reject'
将特定IP地址设置为不进行 22 端口的访问.

ipset命令详解

ipset add whitelist 10.110.80.0/21
将部分内网段添加到白名单
ipset list 
查看ipset的列表
ipset whitelist list 
查看白名单的信息
ipset flush whitelist
清空列表里面的信息
ipset destroy 
销毁所有的列表, 如果加上列表名称就是清理对应的列表. 
ip save whitelist -f zhaobsh.txt 
将白名单保存到具体文件
ipset restore -f zhaobsh.txt

标签:set,SETNAME,ipset,cmd,学习,--,使用,firewall
From: https://www.cnblogs.com/jinanxiaolaohu/p/17366534.html

相关文章

  • 使用数学归纳法证明斐波那契数列通项公式
    使用数学归纳法证明斐波那契数列通项公式:\(F_{n}=\dfrac{\phi^{n}-\hat{\phi}^{n}}{\sqrt{5}}\)定义已知斐波那契数列\(F\)定义为:\[F_{n}=\begin{cases}0,n=0\\n,n=1\\F_{n-1}+F_{n-2},i\ge2\end{cases}\]\(\phi\)和......
  • 使用 Docker Compose 安装 MongoDB
    最近学习Docker,试着在Docker里安装MongoDB,按照镜像mongo文档一顿操作猛如虎。快速开始写个docker-compose.yml文件:version:'3.8'services:db:image:mongocontainer_name:mongodb-containerports:-'27017:27017'......
  • 布局技巧:使用ViewStub
    AndroidAPI中文(14)——ViewStub多亏了<include/>标签,在Android里,很容易就能做到共享和重用UI组件。在Android开发中,很容易就能创建出复杂的UI结构,结果呢,用了很多的View,且其中的一些很少使用。针对这种情况,谢天谢地,Android还为我们提供了一个特别的构件——ViewStub,它可以使......
  • SpringBoot项目使用 validation进行数据校验
    validation进行数据校验@Validated注解和@Valid注解都是SpringFramework中用于数据校验的注解,但它们有以下几点区别:所在包路径不同:@Valid注解位于javax.validation.constraints包下,而@Validated注解位于org.springframework.validation.annotation包下。支持......
  • 基于jQuery的FlexiGrid的插件使用和改造
    已不推荐下载,如要下载去这个连接下载最新的http://gundumw100.iteye.com/admin/blogs/545610上面的2个链接是我参考的例子虽然Flexigrid已然算是优秀,但是问题还是有?比如:1:不支持在列首添加checkbox列2:如何给行附加事件(如右键快显菜单或双击)或者在最后列添加操作列(在列的定......
  • 【pytorch】土堆pytorch教程学习(三)TensorBoard的使用
    TensorBoard是TensorFlow的可视化工具包,提供机器学习实验所需的可视化功能和工具:跟踪和可视化损失及准确率等指标可视化模型图(操作和层)查看权重、偏差或其他张量随时间变化的直方图将嵌入投射到较低的维度空间显示图片、文字和音频数据剖析TensorFlow程序安装Tenso......
  • word学习1()
    1.基础设置建议打开“显示/隐藏标题标志” 建议打开“打印预览和打印” 2.常用快捷键 3.Alt快捷键4.删除键backspace键:删除光标左边内容delete键:删除光标右边内容 ......
  • 自监督学习效果差?Meta AI 提出 Q-score 快速过滤错误样本!
    文|jxyxiangyu自监督学习指的是不依靠人工标注数据,直接从数据中学习到有用的特征表示。自监督学习中所采用的监督信息可以是“是否属于同一实例样本”的二分类标签(对比学习),也可以是一段连续的自然语言文本的下一个词(自回归语言模型)。然而自监督学习相关的论文看多了,感觉也就那么......
  • 云原生第二周--使用kubeasz部署多master的k8s集群
    1k8s集群介绍1.1k8s单master架构单master节点的架构,通常只用于测试环境,生产环境绝对不允许;这是因为k8s集群master的节点是单点,一旦master节点宕机,将导致整个集群不可用;其次单master节点apiServer是性能瓶颈;从上图我们就可以看到,master节点所有组件和node节点中的kubel......
  • 关于深度学习框架的忆苦思甜
    作者:卖萌酱大家好,我是卖萌酱。对一个深度学习从业者来说,无论你的场景是CV、NLP、Speech还是搜广推现金牛,手头使用最高频的工具莫过于深度学习框架,涵盖了模型训练、模型部署,乃至数据标注、数据清洗等环节。站在2022年的视角下,回顾曾经被深度学习框架搞崩溃的瞬间,真心觉得现在的框架......