当前位置: 首页 > news >正文

Linux防火墙-4表5链

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

我们经过上小章节讲了Linux的部分进阶命令,我们接下来一章节来讲讲Linux防火墙。由于目前以云服务器为主,而云服务器基本上就不会使用系统自带的防火墙,而是使用安全组来代替了防火墙的功能,可以简单理解安全组就是web版的防火墙,我们主要从以下几个方面来讲解Linux防火墙:

Linux防火墙-什么是防火墙

Linux防火墙-4表5链(本章节)

Linux防火墙-filter表

Linux防火墙-nat表

Linux防火墙-常用命令

Linux防火墙-案例(一)

Linux防火墙-案例(二)

Linux防火墙-小结

我们上一节讲了门卫手里的小本本记录着很多规则,这些规则如果没有统一的规范来管理,就会显得很混乱,如果真有人来访无法快速找到规则,如果规则有冲突怎么办?今天我们就来讲防护墙里面的4表5链,可以通过它来管理所有的小本本里面的规则。

4表

  1. raw 表

    • 作用:主要用于决定是否对数据包进行状态跟踪的豁免处理。

    • 场景示例:在某些情况下,一些特殊的网络应用程序或者服务需要快速处理大量的数据包,并且不希望这些数据包受到 netfilter 状态跟踪机制的影响(因为状态跟踪可能会消耗一定的系统资源和时间),此时就可以在 raw 表中设置相应的规则,将这些特定的数据包标记为不受状态跟踪处理。例如,一些高性能的网络测试工具或者实时性要求极高的网络通信应用,就可以通过 raw 表来优化其网络性能。

  2. mangle 表

    • 作用:用于对数据包进行修改、标记等操作,以便后续的处理和分类。

    • 场景示例:企业网络中可能需要对不同类型的网络流量进行区分和标记,以便进行不同的处理策略。例如,可以使用 mangle 表对来自特定部门的网络流量进行标记,然后在后续的网络设备中根据这些标记进行流量整形(如限制带宽或优先处理)。另外,还可以在 mangle 表中修改数据包的 IP 头部的某些字段,如 TTL(Time To Live)值,以满足特定的网络拓扑或性能需求。

  3. nat 表

    • 作用:主要负责网络地址转换相关的操作,包括源地址转换(SNAT)和目的地址转换(DNAT)。

    • 场景示例:在企业网络中,当内部使用私有 IP 地址的设备需要访问外部网络时,就需要使用 SNAT 将内部设备的私有 IP 地址转换为公共 IP 地址。例如,一个公司内部有多个员工同时访问互联网,通过在 nat 表中设置 SNAT 规则,将他们的私有 IP 地址转换为公司的公共 IP 地址,这样就可以实现多个设备共享一个公共 IP 地址上网。而对于外部网络访问内部服务器的情况,就需要使用 DNAT 将外部网络请求的目标 IP 地址(通常是公共 IP 地址)转换为内部服务器的私有 IP 地址,实现内部服务器的对外提供服务。

  4. filter 表

    • 作用:主要用于过滤数据包,决定是否允许数据包通过或者丢弃。

    • 场景示例:这是最常用的一个表,用于实现基本的防火墙功能。例如,在企业网络中,可以在 filter 表的 INPUT 链中设置规则,阻止来自特定 IP 地址或者特定端口的数据包进入内部网络,以保护内部系统的安全。同时,也可以在 OUTPUT 链中设置规则,限制内部系统向外发送某些类型的数据包,防止敏感信息泄露或者恶意软件传播。在 FORWARD 链中,可以根据企业的网络安全策略,决定是否允许转发某些数据包,实现对网络流量的精细控制。

5链

  1. INPUT 链

    • 作用:用于处理进入本地系统的数据包。

    • 场景示例:当其他设备发送数据到本地 Linux 系统时,这些数据包在经过网络协议栈的初步处理后,会进入 INPUT 链进行进一步的过滤和决策。比如,当你在本地系统上运行一个 Web 服务器,外部用户通过浏览器访问该服务器时,其发送的 HTTP 请求数据包就会进入 INPUT 链。如果 INPUT 链中的规则允许该数据包通过,那么系统才会将其传递给相应的 Web 服务器应用程序进行处理;如果规则阻止了该数据包,那么它就会被丢弃。

  2. OUTPUT 链

    • 作用:主要处理本地系统产生的向外发送的数据包。

    • 场景示例:当本地系统中的应用程序(例如浏览器)发起一个网络请求时,该请求数据包在系统内部经过一系列准备工作后,会进入 OUTPUT 链。在 OUTPUT 链中,可以根据需要对这些数据包进行过滤和修改。比如,企业内部的安全策略可能要求所有从本地系统发出的数据包都必须添加一个特定的标识字段,那么就可以在 OUTPUT 链中设置相应的规则来实现这一功能。当数据包在 OUTPUT 链中完成处理后,才会被发送到网络上。

  3. FORWARD 链

    • 作用:负责处理需要转发的数据包,即那些不是本地系统的目标数据包,但需要通过本地系统转发到其他设备的数据包。

    • 场景示例:在一个作为网络中间设备(如路由器或具备路由功能的 Linux 系统)的场景中,当接收到一个数据包,并且根据路由规则判断该数据包的目标地址不是本地系统本身,而是要转发到其他网络设备时,这个数据包就会进入 FORWARD 链。在 FORWARD 链中,可以根据设定的规则决定是否允许转发该数据包。例如,在一个企业网络中,为了防止内部网络中的某些恶意设备通过转发数据包进行攻击,可以在 FORWARD 链中设置规则,只允许特定源地址和目标地址的数据包进行转发。

  4. PREROUTING 链

    • 作用:在数据包进入路由决策之前进行处理。

    • 场景示例:当一个数据包刚刚进入 Linux 系统的网络接口时,在进行路由判断(即确定数据包的目标地址以及应该将其发送到哪个网络接口)之前,会先进入 PREROUTING 链。在这个链中,可以进行一些数据包的修改和转换操作。比如,网络地址转换(NAT)功能中的目的地址转换(DNAT)通常就在 PREROUTING 链中实现。例如,企业内部的服务器使用私有 IP 地址,通过在 PREROUTING 链中设置 DNAT 规则,可以将来自外部网络的访问请求的目标地址转换为内部服务器的私有 IP 地址,从而实现外部网络对内部服务器的访问。

  5. POSTROUTING 链

    • 作用:在数据包经过路由决策并且即将离开本地系统时进行处理。

    • 场景示例:当本地系统已经完成对数据包的处理,并且根据路由规则确定了数据包的发送出口时,在数据包离开系统之前会进入 POSTROUTING 链。在这个链中,常见的操作是进行源地址转换(SNAT)。例如,在一个企业网络中,内部多个设备使用私有 IP 地址共享一个公共 IP 地址访问外部网络时,就可以在 POSTROUTING 链中设置 SNAT 规则,将内部设备的私有 IP 地址转换为公共 IP 地址,使得数据包能够顺利发送到外部网络。

表与链的关联

  1. raw 表:关联 PREROUTING 和 OUTPUT 链,在这些链中对数据包进行状态跟踪豁免处理等操作。
  2. filter 表:与 INPUT、FORWARD 和 OUTPUT 链相关,在这些链中依据防火墙规则对数据包进行过滤。
  3. nat 表:涉及 PREROUTING、OUTPUT 和 POSTROUTING 链,主要负责网络地址转换相关操作,如目的地址转换(DNAT)在 PREROUTING 链进行前期处理,源地址转换(SNAT)在 OUTPUT 和 POSTROUTING 链分步完成。
  4. mangle 表:涵盖 PREROUTING、INPUT、FORWARD、OUTPUT 和 POSTROUTING 链,在各链中实现数据包的修改、标记等,以满足不同阶段的网络处理需求。

总结

1.我们平时常用的表就是nat表和filter表

2.filter表其实就是一般而言的防火墙功能,用于控制普通流量的进出。

3.net表则主要用户控制网络地址转换,实际上功能就是和我们的路由器功能差不多。

 

相关文章:

Linux防火墙-4表5链

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 我们经过上小章节讲了Linux的部分进阶命令,我们接下来一章节来讲讲Linux防火墙。由于目前以云服务器为主&#x…...

(最新已验证)stm32 + 新版 onenet +dht11+esp8266/01s + mqtt物联网上报温湿度和控制单片机(保姆级教程)

物联网实践教程:微信小程序结合OneNET平台MQTT实现STM32单片机远程智能控制 远程上报和接收数据——汇总 前言 之前在学校获得了一个新玩意:ESP-01sWIFI模块,去搜了一下这个小东西很有玩点,远程控制LED啥的,然后我就想…...

无环SLAM系统集成后端回环检测模块(loop):SC-A-LOAM以及FAST_LIO_SLAM

最近在研究SLAM目标检测相关知识,看到一篇论文,集成了SC-A-LOAM作为后端回环检测模块,在学习了论文相关内容后决定看一下代码知识,随后将其移植,学习过程中发现我找的论文已经集成了回环检测模块,但是我的另…...

速盾:视频开cdn合适还是视频点播合适?

在选择视频服务时,许多企业和个人面临了一个重要的决策,那就是选择是使用开CDN(内容分发网络)还是使用视频点播服务。这两种选择都有各自的优势和适用场景,因此在做出决定之前,我们需要仔细评估自身的需求和…...

Mac电脑安装FFmpeg和卸载FFmpeg

Mac电脑安装FFmpeg 在Mac上安装FFmpeg有几种方法,以下是通过Homebrew安装的最简单方法: 1. 使用Homebrew安装FFmpeg 如果你已经安装了Homebrew,可以通过以下命令来安装FFmpeg: 打开终端 (Terminal)。更新Homebrew:…...

数据结构:栈 及其应用

逻辑结构: 栈(Stack)是一种遵循后进先出(LIFO, Last In First Out)原则的有序集合 (受限的线性表)。这种数据结构只允许在栈顶进行添加(push)或删除(pop&…...

批量发送邮件:性能优化与错误处理深度解析

目录 一、批量发送邮件的基础概述 1.1 批量发送邮件的定义 1.2 邮件发送流程 二、性能优化策略 2.1 发送速率控制 2.2 队列管理 2.3 动态IP池管理 2.4 智能调度 三、错误处理机制 3.1 暂时性发送错误处理 3.2 永久性发送错误处理 3.3 邮件反馈收集与分析 四、案例…...

STM32原理知识查询表

本篇文章主要收录单片机学习过程中的各种知识点原理,如果后面遇到了比较具体的应用,也会有专门的配套实践过程。 2024.09.27单片机的两种看门狗原理解析 持续待更新。。。。。...

从 Kafka 到 WarpStream: 用 MinIO 简化数据流

虽然 Apache Kafka 长期以来一直是流数据的行业标准,但新的创新替代方案正在重塑生态系统。其中之一是 WarpStream,它最近在 Confluent 的所有权下进入了新的篇章。此次收购进一步增强了 WarpStream 提供高性能、云原生数据流的能力,巩固了其…...

【Gitee自动化测试4】本地Git分支的增删查,本地Git分支中文件的增删查,本地文件的暂存/提交,本地分支的推送

一、流程 本地创建分支,设定连接什么云分支本地创建文件,暂存、提交–>本地分支本地分支推送所有修改–>云仓库 二、分支概念 在版本回退里,每次提交,git都把它们串成一条时间线,这条时间线可以理解为是一个分…...

vue-baidu-map的基本使用

前言 公司项目需求引入百度地图,由于给的时间比较短,所以就用了已经封装好了的vue-baidu-map 一、vue-baidu-map是什么? vue-baidu-map是基于vue.js封装的百度地图组件(官方文档) 二、使用步骤 1.下载插件 //我下载的版本 npm install …...

策略路由控制选路

🐣个人主页 可惜已不在 🐤这篇在这个专栏 华为_可惜已不在的博客-CSDN博客 🐥有用的话就留下一个三连吧😼 目录 一、 实验拓扑 二、 实验简述 三、 实验配置 配置路由信息 配置控制选路 四、 实验验证 ​ 一、 实验…...

【数据结构和算法实践-排序-快速排序】

数据结构和算法实践-排序-归并排序 题目My Thought代码示例JAVA-8 题目 排序 My Thought 然后再进行递归,递归要注意两个方面: 一、自我调用 二、终止条件:即函数边界 注意点:树、递归* 代码示例 JAVA-8 public class QuickSo…...

测试面试题:请你分别介绍一下单元测试、集成测试、系统测试、验收测试、回归测试

单元测试:完成最小的软件设计单元(模块)的验证工作,目标是确保模块被正确的编码集成测试:通过测试发现与模块接口有关的问题系统测试:是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合…...

回归预测合集|基于灰狼优化21个机器学习和深度学习的数据回归预测Matlab程序 多特征输入单输出

回归预测合集|基于灰狼优化21个机器学习和深度学习的数据回归预测Matlab程序 多特征输入单输出 文章目录 一、清单二、实验结果三、核心代码四、代码获取五、总结 一、清单 基于灰狼优化BP神经网络的数据预测Matlab程序GWO–BP 基于灰狼优化卷积神经网络的数据预测Matlab程序G…...

html/css怎么禁用浏览器自动填写

<input type"text" name"username" autocomplete"off"> <input type"password" name"password" autocomplete"new-password">或者vue&#xff1a; <el-input type"text" v-model"…...

信息安全工程师(22)密码学网络安全应用

前言 密码学在网络安全中的应用极为广泛且深入&#xff0c;它通过多种技术手段确保数据的机密性、完整性和真实性。 一、数据加密 对称加密&#xff1a; 定义&#xff1a;使用相同的密钥进行加密和解密的过程。特点&#xff1a;加密和解密速度快&#xff0c;适用于大数据量的加…...

算法打卡:第十一章 图论part08

今日收获&#xff1a;拓扑排序&#xff0c;dijkstra算法 算法讲解部分均来源于代码随想录 1. 拓扑排序 基础知识&#xff1a; &#xff08;1&#xff09;应用场景&#xff1a;给出有向图&#xff0c;将有向图转换为线性的排序就叫拓扑排序&#xff08;如果图中有环则存在循…...

2024年Gartner主存储平台魔力象限报告 | 华为从领导者象限滑落到挑战者象限

魔力象限报告对比 本周Gartner发布了2024年主存储平台魔力象限报告&#xff0c;主存储用户正在采用平台原生服务功能来实现混合 IT 运营。I&O 领导者应利用这项研究来为任务关键型应用程序规划和执行现代且有弹性的存储基础设施平台。 本次报告中共有10家厂商入选&#xf…...

[Python学习日记-31] Python 中的函数(上)

[Python学习日记-31] Python 中的函数&#xff08;上&#xff09; 简介 语法定义 函数的参数 简介 引子&#xff1a; 你是某公司的一个高级程序员&#xff0c;现在老板让你写一个监控程序&#xff0c;需要24小时全年无休的监控公司网站服务器的系统状况&#xff0c;当 CPU、…...

测试微信模版消息推送

进入“开发接口管理”--“公众平台测试账号”&#xff0c;无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息&#xff1a; 关注测试号&#xff1a;扫二维码关注测试号。 发送模版消息&#xff1a; import requests da…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

Linux云原生安全:零信任架构与机密计算

Linux云原生安全&#xff1a;零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言&#xff1a;云原生安全的范式革命 随着云原生技术的普及&#xff0c;安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测&#xff0c;到2025年&#xff0c;零信任架构将成为超…...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...

微服务通信安全:深入解析mTLS的原理与实践

&#x1f525;「炎码工坊」技术弹药已装填&#xff01; 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言&#xff1a;微服务时代的通信安全挑战 随着云原生和微服务架构的普及&#xff0c;服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...

热烈祝贺埃文科技正式加入可信数据空间发展联盟

2025年4月29日&#xff0c;在福州举办的第八届数字中国建设峰会“可信数据空间分论坛”上&#xff0c;可信数据空间发展联盟正式宣告成立。国家数据局党组书记、局长刘烈宏出席并致辞&#xff0c;强调该联盟是推进全国一体化数据市场建设的关键抓手。 郑州埃文科技有限公司&am…...

《Offer来了:Java面试核心知识点精讲》大纲

文章目录 一、《Offer来了:Java面试核心知识点精讲》的典型大纲框架Java基础并发编程JVM原理数据库与缓存分布式架构系统设计二、《Offer来了:Java面试核心知识点精讲(原理篇)》技术文章大纲核心主题:Java基础原理与面试高频考点Java虚拟机(JVM)原理Java并发编程原理Jav…...