iptables规则详解_iptables规则文件

iptables规则详解_iptables规则文件利用ipset,使iptables可以利用一条规则匹配多条IP地址,提高iptables的匹配效率,降低防火墙的系统消耗。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

使用ipset精简iptables规则的IP列表

一、ipset命令的基本用法

摘要

ipset -N 集合 类型描述 [选项]
ipset – [XFLSHh] [集合] [选项]
ipset – [EW] 进设置 出设置
ipset – [ADU] 集合元素
ipset -B集合元素-b binding
ipset -T集合元素 [-b binding]
ipset -R

命令

这些选项明确地指定了执行的活动。只有一个命令可以在命令行中规定除非其他的命令在下面。对于所有的长版本命令和选项名称,必须使用足够大的空间以确保ipset可以把他们和其他的选项区分开。

-N, –创建 集合名称 类型 类型具体选项
创建一个用集合名称命名并且指定类型的集合。类型具体选项必须是系统规定的。

-X, –删除 [集合名称]
删除指定的集合,如果没有指定或者指定all就删除全部集合。在删除集合之前,所有基于集合的绑定和默认绑定都会被移除。
如果集合已经被使用,则什么都不做。

-F, –清空 [集合名称]
删除指定集合中的所有规则, 如果没有指定或者指定了all就清空所有的集合。绑定不会受到清空操作的影响。

-E, –重命名 旧集合名 新集合名
重命名集合,新集合名的标识必须是目前不存在。

-W, –交换 源集合名 目的集合名
交换两个集合的内容,或者说交换两个集合的名称。这两个集合必须是存在的而且是具有相同的类型才能交换。

-L, –列出 [集合名名称]
列出指定集合的规则和绑定,如果没有指定或者指定为all就列出所有的集合。-n选项,数字选项可以用来限定名称查找和生产数字输出,当-s ,分类选项已经使用,规则将分类排列(如果给出的集合类型支持这个选项)。

-S, –保存 [集合名称]
保存指定名称的集合,如果没有指定或者指定为all,则保持所有集合:指定恢复可以读取的标准输出格式。

-R, –复原
复原已保存的会话.已被保存的会话可以是标准输入提供的。
当产生一个会话文件的时候请注意支持的命令(创建集合,添加元素,绑定)必须遵循严格的规范:首先创建集合添加所有属于它的集合等等,最后你可以列出所有的绑定命令.此外,这是一个复原选项,所以复原的集合必须是不存在的。

-A, –添加 集合名称 IP
往集合中添加一个ip。

-D, –删除 集合名称IP
从集合中删除一个ip

-T, –测试 集合名称 IP
测试一个ip是不是在集合中,要是ip在集合中返回0,如果ip不在集合中则返回非0.

-T, –测试 集合名称 IP 绑定的目的集合
测试ip是否附属指定集合的绑定点。如果成功返回0,否则返回非0.关键字default可以用来测试集合的默认绑定。

-B, –绑定 集合名称 IP 绑定的目的集合
绑定集合里的ip和目的集合

-U, –解除绑定 集合名称 IP
删除集合中指定ip的绑定。

-H, –帮助 [设置类型]
找出指定设置类型的帮助信息。
在-B –U和-T命令,你可以使用默认的:default,去绑定,解除绑定或者测试默认绑定去代替ip.在-U命令中你可以使用默认的:all去删除绑定集合的所有元素。

其他选项

接下来的选项可以被指定

-b, –binding setname

这个选择为-B绑定选项指定值。这是一个强制性的命令. 你在-T中可以用来测试绑定。

-s, –分类
分类标准输出.当监听集合,规则列表分类的时候。

-n, –数字
数字输出。当监听集合,绑定,ip地址和端口好需要输出的时候使用数字格式. 默认的系统试着去显示这些信息用主机名,网络名和服务,这会引起dns查找。

-q, –安静
禁止在标准输出和标准错误上有认可输出但是ipset还是会返回可能的错误。

二、管理ipset列表

1、初始化IP列表
ipset create \[name\] hash:net

2、向列表中添加IP
ipset add \[name\] ip

3、从列表中删除IP
ipset del \[name\] ip

4、销毁IP列表
ipset destroy \[name\]

三、通过iptables引用ipset列表

1、先初始化一个IPSET列表
ipset create blacklist hash:net

2、向IPSET列表中添加要屏蔽的IP
ipset add blacklist 1.1.1.1

3、将IPSET列表引用iptables规则
iptables -I INPUT -m set --match-set blacklist src -j DROP

通过 -m set 引用iptables的set模块,--match-set 匹配ipset列表名称,src 表示指定列表为来源IP列表。
注意:当ipset列表更新时,需要重新添加iptables规则才会生效。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185290.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月6日 下午3:00
下一篇 2022年10月6日 下午3:00


相关推荐

  • 使用 & 进行高效率取余运算

    使用 & 进行高效率取余运算

    2021年11月12日
    70
  • C语言:求两个数的最大公约数和最小公倍数

    C语言:求两个数的最大公约数和最小公倍数C语言:求两个数的最大公约数和最小公倍数求两个数的最大公约数:“辗转相除法”:设两数为a和b(a>b),用a除以b,得a÷b=商…余数,若余数为0,则最大公约数为b;若余数不为0,则再用b÷余数,得b÷余数=商1…余数1,若余数1=0,则最大公约数为余数,若余数1不为0,继续让商÷余数n,一直到能够余数为零这时的除数即最大公约数。求两个数的最小公倍数:最小公倍数=两数的乘积÷…

    2022年5月13日
    45
  • ContentWindow属性的用法及作用

    ContentWindow属性的用法及作用最近在给项目搭建功能的过程中遇到了个难题 因为在设计该项目时给的 iframe 子页面非常多 从头到尾数下来的话起码得有十多个子页面 当时搭页面的时候用了 layui 中的 Tab 选项卡插件 让用户可以通过点击所需的业务按钮来弹出相对应的分页面 但子页面多也并不是件好事 几乎每个子页面都需要用到父页面的中的方法 打开存放在父页面中与该业务相关的模态框 遮罩层 或是让父页面刷新 这都需要通过 js 中的 paren

    2026年3月26日
    1
  • Python阶乘求和

    Python阶乘求和题目:获得用户输入的整数n,输出1!+2!+…+n!的值。思路:依次计算每个阶乘的值,然后相加起来,即可得到结果代码:#获得用户输入的整数n,输出1!+2!+…+n!的值。num=int(input(“pleaseinputanumber:”))num_sum=0foriinrange(1,num+1):forjinrange(1,i+1):num_sum=num_sum+jprint(f”1!+…+{num}!的阶乘

    2025年8月18日
    5
  • EF框架简介

    EF框架简介EF 全称是 EntityFramew EntityFramew 是 ADO NET 中的一套支持开发面向数据的软件应用程序的技术 是微软的一个 ORM 框架 ORM 框架 ObjectRelati 翻译过来就是对象关系映射 二 EF 实体框架整体架构 架构组件 EDM 实体数据模型 EDM 由三个主要部分组成 概念模型 映射和存储模型 ConceptualMo 概念模型包含模型类及其关系 这将独立于您的数据库表设计 Sto

    2026年3月17日
    1
  • linux命令chgrp,Linux命令Chgrp 详解

    linux命令chgrp,Linux命令Chgrp 详解chgrp 命令用于直接的修改文件或文件夹的所属群组的信息 下面 我们将使用简单易懂的例子来讨论这个工具 下文中提到的所有示例和说明都已在 Ubuntu16 04LTS 上进行了测试 Linuxchgrp 命令正如您现在已经理解的那样 如果需求仅仅是改变文件或目录的组信息 那么您可以直接使用 chgrp 而不是 chown 该工具提供了几个在不同场景下使用的命令行选项 以下是 chgrp 的通用语法 chg

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号