linux之iptables简介
什么是防火墙
防止恶意流量访问的软件就叫做防火墙
防火墙的种类
1、软件防火墙
firewalld、iptables
2、硬件防火墙
F5
3、firewalld和iptables的区别
firewalld更简单,不过firewalld底层操作还是iptables
iptables更底层,底层操作是系统内核流量的走向
包过滤防火墙
就是过滤数据包的防火墙
iptables中的四表
具备某种功能的集合叫做表
1 filter: 负责做过滤功能:INPUT、OUTPUT、FORWARD 2 nat: 负责网络地址转换:PREROUTING、INPUT、OUTPUT、POSTROUTING 3 mangle: 负责修改数据包内容:PREROUTING、INPUT、OUTPUT、POSTROUTING、FORWARD 4 raw: 负责数据包跟踪:PREROUTING、OUTPUT
iptables中的五链
1) PREROUTING: 主机外报文进入位置,允许的表mangle, nat(目标地址转换,把本机地址转换为真正 的目标机地址,通常指响应报文) 2) INPUT:报文进入本机用户空间位置,允许的表filter, mangle 3) OUTPUT:报文从本机用户空间出去的位置,允许filter, mangle, nat 4) FORWARD:报文经过路由并且发觉不是本机决定转发但还不知道从哪个网卡出去,允许filter, mangle 5) POSTROUTING:报文经过路由被转发出去,允许mangle,nat(源地址转换,把原始地址转换为转发主 机出口网卡地址)
流入本机:PREROUTING --> INPUT --> PROCESS(进程)
经过本机:PREROUTING --> FORWARD --> POSTROUTING
从本机流出:PROCESS(进程) --> OUTPUT --> POSTROUTING
总结:表的作用各有不同,链的位置各有不同。表中的链就是将表的功能放到链的具体位置去执行。
iptables流程图
流入本机: A ---> PREROUTING ---> INPUT ---> B 流出本机:OUTPUT ---> POSTROUTING ---> B 经过本机: A ---> OUTPUT ---> POSTROUTING | ---> PREROUTING ---> FORWARD ---> POSTROUTING ---> C ---> PREROUTING ---> INPUT ---> B filter : INPUT 、FORWARD、 OUTPUT nat : PREROUTING 、 INPUT、 OUTPUT、 POSTROUTING raw : PREROUTING、 OUTPUT mangle : PREROUTING INPUT FORWARD OUTPUT POSTROUTING
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构