防火墙 iptables

本文深入解析Iptables的原理及工作流程,阐述其作为Linux防火墙的重要组成部分,如何通过自定义规则实现数据报文的过滤与处理。涵盖表、链、规则的概念,以及iptables与netfilter的协同作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考博客:https://www.cnblogs.com/clsn/p/8308678.html

一、相关知识

1、什么是IPTABLES

Iptables是隔离主机以及网络的工具,通过自己设定的规则以及处理动作对数据报文进行检测以及处理。netfilter/iptables是表的容器,即表属于netfiletr
iptables 主要工作在OSI七层的第2,3,4层

2、什么是 表

表是链的容器,即所有的链都属于其对应的表。

3、什么是 链

链是规则的容器,

4、什么是规则

规则是iptables系统过滤信息的规范和具体条款。

表和链的关系
在这里插入图片描述
在这里插入图片描述

常用的是 filter ,nat

filter
在这里插入图片描述
nat
在这里插入图片描述
在这里插入图片描述

二、工作流程

在这里插入图片描述

分析数据报文进入本机后应用了哪些表规则以及链规则

如filter表的规则,filter表决定是否放行数据包通过,那如果通过,则必须经由INPUT链流入数据包,INPUT链是处理入站数据的,如果没问题,继续放行到用户空间,再经由OUTPUT链将数据包流出

如nat表的规则,nat表主要实现转发功能,数据包先经由PREROUTING链进行路由选择,选择好路线后再经由FORWARD链转发数据,然后再进行一个路由选择,最后由POSTROUTING链流出数据

三、原理

linux的防火墙由netfilter和iptables组成

用户空间的iptables制定防火墙规则,内核空间的netfilter实现防火墙功能
netfilter(内核空间)位于Linux内核中的包过滤防火墙功能体系,称为Linux防火墙的“内核态”

iptables(用户空间)位于/sbin/iptables,是用来管理防火墙的命令的工具,为防火墙体系提供过滤规则/策略,决定如何过滤或处理到达防火墙主机的数据包,称为Linux防火墙的“用户态”

四、详细语法与语法

1、命令在这里插入图片描述
注:不指定表名时,默认表示filter表,不指定链名时,默认表示该表内所有链,除非设置规则链的缺省策略,否则需要指定匹配条件

2、语法

iptables—>表—>操作—>链—>条件匹配—>处理动作

3、管理选项

链管理–> 规则选项–>规则显示

链管理
在这里插入图片描述

规则管理
在这里插入图片描述

4、条件匹配

条件匹配分为基本匹配和扩展匹配,扩展匹配又分为显示匹配和隐式匹配

基本匹配的特点是:无需加载扩展模块,匹配规则生效;

扩展匹配的特点是:需要加载扩展模块,匹配规则方可生效。

隐式匹配的特点:使用-p选项指明协议时,无需再同时使用-m选项指明扩展模块以及不需要手动加载扩展模块;

显示匹配的特点:必须使用-m选项指明要调用的扩展模块的扩展机制以及需要手动加载扩展模块

基本匹配

在这里插入图片描述

隐式匹配
在这里插入图片描述

显示匹配 more ipables-extensions
在这里插入图片描述

5、处理动作
在这里插入图片描述

6、保存和载入规则
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值