【iptables】增加规则和删除规则

        我们在另外一台机器上,使用ping命令,向当前机器发送报文,如下图所示,ping命令可以得到回应,证明ping命令发送的报文已经正常的发送到了防火墙所在的主机,ping命令所在机器IP地址为31.133(黑色),当前测试防火墙主机的IP地址为31.132(白色),我们就用这样的环境,对iptables进行操作演示。

3.1 增加规则

        iptables -t 表名 -I/-A 链名 -s 源地址 -j 处理动作

  • -I选项,指明将”规则”插入至哪个链中,-I表示insert,即插入的意思,默认在第一行添加
  • -A选项,在指定链的末尾添加一条规则
  • -s选项,指明”匹配条件”中的”源地址”,即如果报文的源地址属于-s对应的地址,那么报文则满足匹配条件,-s为source之意,表示源地址。
  • -j选项,指明当”匹配条件”被满足时,所对应的动作,有ACCEPT、DROP等

        那么此处,我们就在132上配置一条规则,拒绝192.168.31.133上的所有报文访问当前机器,之前一直在说,规则由匹配条件与动作组成,那么”拒绝192.168.31.

        133上的所有报文访问当前机器”这条规则中,报文的”源地址为192.168.31.133″则属于匹配条件,如果报文来自"192.168.31.133″,则表示满足匹配条件,而”拒绝”这个报文,就属于对应的动作

        此时我们可以再通过192.168.31.133去ping 192.168.21.132,看能否ping通

        如上图所示,ping 132主机时,PING命令一直没有得到回应,看来我们的iptables规则已经生效了,ping发送的报文压根没有被132主机接受,而是被丢弃了,所以更不要说什么回应了

        此时我们可以再次查看iptables中的规则,可以看到已经有186个包被对应的规则匹配到

拓展:规则的顺序问题

思考:

        现在INPUT链中已经存在了一条规则,它拒绝了所有来自192.168.31.133主机中的报文,如果此时,我们在这条规则之后再配置一条规则,后面这条规则规定,接受所有来自192.168.31.133主机中的报文,那么,iptables是否会接受来自133主机的报文呢?

        使用如下命令在filter表的INPUT中追加一条规则:

        执行完添加规则的命令后,再次查看INPUT链,发现规则已经成功”追加”至INPUT链的末尾,那么现在,第一条规则指明了丢弃所有来自192.168.31.133的报文,第二条规则指明了接受所有来自192.168.31.133的报文,那么结果到底是怎样的呢?

        在133主机上再次使用ping命令向133主机发送报文,发现仍然是ping不通的,看来第二条规则并没有生效。

        而且从上图中第二条规则的计数器可以看到,根本没有任何报文被第二条规则匹配到。发生上述情况,会不会与规则的先后顺序有关呢?测试一下,我们再添加一条规则,新规则仍然规定接受所有来自192.168.31.133主机中的报文,只是这一次,我们将新规则添加至INPUT链的最前面试试。

        使用如下命令,在filter表的INPUT链的前端添加新规则

        在第一条规则就是接受所有来自192.168.31.133的报文,而且此时计数是0,此刻,我们再从133上向132发起ping请求。

        133上已经可以正常的收到响应报文了,那么回到132查看INPUT链的规则,第一条规则的计数器已经显示出了匹配到的报文数量

        看来顺序很重要,如果报文已经被前面的规则匹配到,iptables则会对报文执行对应的动作,即使后面的规则也能匹配到当前报文,很有可能也没有机会再对报文执行相应的动作了,就以上图为例,报文先被第一条规则匹配到了,于是当前报文被”放行”了,因为报文已经被放行了,所以,即使上图中的第二条规则即使能够匹配到刚才”放行”的报文,也没有机会再对刚才的报文进行丢弃操作了。这就是iptables的工作机制。

之前提过的--line-numbers选项,可以列出规则序号

        我们也可以在添加规则时,指定新增规则的编号,这样我们就能在任意位置插入规则了,我们只要把刚才的命令稍作修改即可,如下

        iptables -t filter -I INPUT 2 -s 192.168.31.133 -j DROP

3.2 删除规则

有两种方法:

  • 方法一:根据规则的编号去删除规则

                        iptables -t 表名 -D 链名 规则编号

  • 方法二:根据具体的匹配条件与动作删除规则

                        iptables -t 表名 -D 链名 -s 源地址 -j 处理动作

(1)根据规则的编号去删除规则

先查看一下filter表中INPUT链的规则

        假设我们需要删除第14条规则,可以使用下面命令

(2)根据具体的匹配条件与动作删除规则

        删除下图中源地址为192.168.31.133,动作为ACCEPT的规则,于是,删除规则的命令如下

        删除对应规则时,仍然使用-D选项,-D INPUT表示删除INPUT链中的规则,剩下的选项与我们添加规则时一样,-s表示以对应的源地址作为匹配条件,-j ACCEPT表示对应的动作为接受,所以,上述命令表示删除INPUT链中源地址为192.168.31. 133,动作为ACCEPT的规则。

(3)清空链表中的规则

删除指定表中某条链的所有规则

                iptables -t 表名 -F 链名

        -F选项为flush之意,即冲刷指定的链,即删除指定链中的所有规则,但是注意,此操作相当于删除操作,在没有保存iptables规则的情况下,请慎用。

        其实,-F选项不仅仅能清空指定链上的规则,其实它还能清空整个表中所有链上的规则,不指定链名,只指定表名即可删除表中的所有规则,命令如下

                iptables -t 表名 -F

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/276901.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

数据结构与算法教程,数据结构C语言版教程!(第一部分、数据结构快速入门,数据结构基础详解)三

第一部分、数据结构快速入门,数据结构基础详解 数据结构基础,主要研究数据存储的方式。 本章作为数据结构的入门课程,主要让读者明白,数据结构到底是什么,常用的数据存储结构有哪些,数据结构和算法之间到底…

LMX2571 芯片配置Verliog SPI驱动

前言 本实验使用ZYNQ的PL(FPGA)对LMX2571芯片进行配置,以下连接为相关的原理和软件使用资料。 TICS Pro 配置时钟芯片 文献阅读–Σ-Δ 小数频率合成器原理 LMX2571芯片数据手册 一、LMX2571配置时序分析 1.1 写时序 LMX2571使用24位寄存器进行编程。一个24位移位…

什么是高并发系统?

1.1 什么是高并发? 高并发(High Concurrency),通常是指通过设计保证系统能够同时处理很多请求。即在同一个时间点,有很多的请求同时访问同一个接口。高并发意味着大流量,需要运用技术手段去抵抗这种大流量…

LeetCode刷题--- 解数独

个人主页:元清加油_【C】,【C语言】,【数据结构与算法】-CSDN博客 个人专栏 力扣递归算法题 http://t.csdnimg.cn/yUl2I 【C】 ​​​​​​http://t.csdnimg.cn/6AbpV 数据结构与算法 ​​​​​http://t.csdnimg.cn/hKh2l 前言:这个专栏主…

【Vue2+3入门到实战】(10)Vue基础之一文掌握 组件通信 详细示例(组件通信语法、父传子 、 子传父、非父子通信)

这里写自定义目录标题 一、学习目标1.组件通信2.综合案例:小黑记事本(组件版) 二、组件通信1.什么是组件通信?2.组件之间如何通信3.组件关系分类4.通信解决方案5.父子通信流程6.父向子通信代码示例7.子向父通信代码示例8.总结 三、…

易趋产品升级(EasyTrack 11_V1.3) | 集成飞书、WPS、个性化设置,增强团队协作和用户体验

企业在项目管理过程中,经常会遇到项目信息同步不及时、沟通障碍以及管理软件使用不便捷等难题,导致团队协作效率低下。这种情况下,如果使用了多个办公软件(如:钉钉、企业微信、项目管理软件等),…

AIGC盛行,带你轻松调用开发

文章目录 前言一、📖AIGC简介二、📣开通体验开通模型获取API-KEY 三、📝基于java实现调用1.设置API-KEY2.体验大语言模型多轮对话演示补充流式输出 3.体验通义千问VL使用官方提供照片本地文件多轮对话流式输出 总结 前言 本篇文章基于java和…

IPv4归属地信息查询方法与应用

IPv4地址归属地信息查询是网络管理和安全领域的关键工具。本文将介绍IPv4地址的概念,探讨IPv4归属地信息的重要性,并详细介绍几种查询IPv4归属地信息的方法以及其应用场景。 第一部分:IPv4地址简介 1.1 什么是IPv4地址 IPv4(In…

CGAL的形状规则化

规则化之前(红色)和之后(绿色)的闭合轮廓。 1、介绍 这个 CGAL包能够规范2D中的一组线段和开闭轮廓以及3D中的一组平面,以便所有输入对象根据用户指定的条件进行旋转和对齐。此外,我们提供了一个全局规范框…

旧衣回收小程序搭建,稳占回收市场

近几年我国大众的消费水平不断提升,闲置物品也相应增加了不少,尤其是闲置衣服,为了减少资源浪费,旧衣服回收回收行业受到了大众的关注。 目前我国旧衣服回收行业的市场规模达到了300多亿元,旧衣回收行业的商业价值非常…

跨模态检索论文阅读:Plug-and-Play Regulators for Image-Text Matching用于图像文本匹配的即插即用调节器

Plug-and-Play Regulators for Image-Text Matching用于图像文本匹配的即插即用调节器 利用细粒度的对应关系和视觉语义比对在图像-文本匹配中显示出巨大的潜力。通常,最近的方法首先使用跨模态注意力单元来捕捉潜在的区域-单词交互,然后整合所有比对以获…

椭圆中点算法

原理 椭圆的扫描转换与圆的扫描转换有相似之处,但也有不同,主要区别是椭圆弧上存在改变主位移方向的临界点。瞬时针绘制四分椭圆弧的中点算法,根据对称性可以绘制完整的椭圆。 四分椭圆弧 中心在原点,长半轴为 a a a、短半轴为…

diffusion model (十) anydoor技术小结

paperAnyDoor: Zero-shot Object-level Image Customizationcodehttps://github.com/damo-vilab/AnyDoorOrg香港大学,Alibaba Groupdate2023-07 1 Motivation 过去我们用dreambooth,LORA,textual inversion等方法做定制目标生成。但这个方法…

liunx系统突然不能启动jar

启动命令 nohup java -jar /date/gd_ly/jar/mssda-platform-backend-0.0.1-SNAPSHOT.jar -Dspring.config.location/date/gd_ly/jar/application-dev.yml 报错信息 Error: A JNI error has occurred, please check your installation and try again Exception in thread &q…

2022年全球软件质量效能大会(QECon北京站2022)-核心PPT资料下载

一、峰会简介 当前,新一轮科技革命和产业变革正在重塑全球经济格局,以云计算为代表的新一代信息技术创新活跃,与实体经济深度融合,推动泛在连接、数据驱动、智能引领的数字经济新形式孕育而生。 新兴技术的出现给测试乃至整个软…

CSS 纵向扩展动画

上干货 <template><!-- mouseenter"startAnimation" 表示在鼠标进入元素时触发 startAnimation 方法。mouseleave"stopAnimation" 表示在鼠标离开元素时触发 stopAnimation 方法。 --><!-- 容器元素 --><div class"container&q…

HCIA-Datacom题库(自己整理分类的)——OSPF协议判断

1.路由表中某条路由信息的Proto为OSPF则此路由的优先级一定为10。√ 2.如果网络管理员没有配置骨干区域,则路由器会自动创建骨干区域&#xff1f; 路由表中某条路由信息的Proto为OSPF&#xff0c;则此路由的优先级一定为10。 当两台OSPF路由器形成2-WAY邻居关系时&#xff0…

Arduino串口发送接收和串口中断事件

目录 一、硬件介绍 1、控制器 2、TTL转USB串口 二、软件程序 1、单片机发送字符串 &#xff08;1&#xff09;每个串口对应的类名称介绍 &#xff08;2&#xff09;发送功能 &#xff08;3&#xff09;代码 &#xff08;4&#xff09;测试 2、单片机接收字符串 &…

【 YOLOv5】目标检测 YOLOv5 开源代码项目调试与讲解实战(3)-训练yolov5模型(本地)

训练yolov5模型&#xff08;本地&#xff09; 训练文件 train.py训练如下图 一些参数的设置weights:对于weight参数&#xff0c;可以往Default参数中填入的参数有 cfg&#xff1a;&#xff08;缩写&#xff09;cfg参数可以选择的网络模型 data对于data hyp 超参数epochs 训练多…

全新ui自动化测试框架教学——Cypress

前言 在现阶段自动化测试领域大规模普及的是selenium及appium等常规自动化测试工具&#xff0c;但在其中会有遇到很多影响因素导致测试结果不理想和不准确的情况发生。在经过Darren洋对自动化测试工具调研后&#xff0c;发现了Cypress这一款针对端到端的自动化测试工具&#xf…