# §08.2⭐防火墙类型与实现技术

LLMS index: [llms.txt](/wikis/llms.txt)

---

### 包过滤防火墙
传输层知道端口-TCP-UDP

网络层知道ip

+ **传输层**（如TCP或UDP）负责在源端和目标端之间建立连接和传输数据，它知道**端口号**，通过端口号来确定哪一个应用程序或服务应该接收数据。
+ **网络层**（通常指的是IP层）负责在不同的网络之间传输数据，它知道**IP地址**，通过IP地址来找到目的地计算机。

因此，网络层知道IP地址，传输层知道端口号，是符合计算机网络协议栈中的基本概念的。

Q： 包不是在网络层传输的吗，包过滤防火墙怎么能知道端口  

A：你提出的问题非常关键，涉及到网络模型中不同层之间的关系。虽然**包**确实是在网络层传输的，但当我们谈论包过滤时，它通常包括对**传输层**信息的检查。

让我们分层来看：

1. **网络层（IP层）传输的是IP包**，IP包中包含源IP地址、目标IP地址等信息，但它不包含传输层的端口号。网络层只负责把包发送到目的IP地址。
2. **传输层**（如TCP或UDP）传输的是**段**或**报文**，这些段包含了源端口号和目标端口号等信息，用于在主机内部识别具体的应用程序。

当我们提到**包过滤**时，虽然过滤是在网络层进行的，许多防火墙和路由器同时可以查看数据包中的更高层（如传输层）信息。这是因为在IP包的负载部分，实际上包含了**传输层报文**（如TCP或UDP段），其中有端口号信息。包过滤设备会深入解析IP包的负载部分，提取出传输层的端口号信息来进行过滤决策。

因此，尽管端口号属于传输层信息，包过滤设备依然可以通过检查数据包中的**传输层头部**（比如TCP或UDP头部）来基于端口号进行过滤。这是一种多层解析的技术。

![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/9f5b08b2e7977649dd6b4f27203b8900_MD5.png)

包过滤防火墙**主要工作在网络层（IP层）**但也能检测传输层的报文。

![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/91c2f6fcc83d46c197a979205a31061d_MD5.png)

**25端口**是用于**SMTP（Simple Mail Transfer Protocol，简单邮件传输协议）的标准端口。SMTP 是用于在邮件服务器之间发送电子邮件的协议，特别是用来发送出站邮件**。

![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/0bcb8dea3920828f98e7762765da3708_MD5.png)



 访问控制列表（ACL，Access Control List）中，定义匹配条件的运算符  

+ `**gt**`**（greater than， 大于）**：
+ 用于匹配**大于某个端口号**的流量。例如，`gt 1024` 表示匹配所有端口号大于1024的流量（即1025及以上的端口）。
+ `**eq**`**（equal， 等于）**：用于匹配**等于某个特定端口号**的流量。例如，`eq 80` 表示只匹配端口号为80的流量（通常是HTTP流量）。
+ `**lt**`：小于（less than），用于匹配小于指定端口号的流量。
+ `**neq**`：不等于（not equal），用于匹配不等于某个端口号的流量。
+ `**range**`：用于指定一个端口号范围，如 `range 1000 2000` 表示匹配端口号在1000到2000之间的流量。

### 包过滤防火墙案例分析
![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/bd3d86df45be04cbe27adce390d7d3c9_MD5.png)

包过滤、网络、源ip地址、目的ip地址、协议类型

### 状态检测技术
![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/72a4be5de1edb54276455831bc1759fa_MD5.png)

应用服务代理防火墙会慢，能分析应用层的东西，WAF对用户不透明。

### 应用服务代理防火墙
![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/94c2a0fd3b086f2bc5936dc9ebb59630_MD5.png)

### 网络地址转换技术NAT
静态nat内网和公网的ip是永久映射一一对应的，因此基本不被使用。

实际常用 端口NAT，例如sakura内网穿透。

![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/0a6bbf85cbc878ed1716538845456fbb_MD5.png)

私网网段：

10.0.0.0 - 10.255.255.255

172.16.0.0 - 172.31.255.255

172.168.0.0 - 172.168.255.255

### 下一代防火墙技术
![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/0bd4e886d420c2c73b5b8c8610920803_MD5.png)

大型网络一般不用下一代防火墙，一方面减少单点，一方面术业有专攻，会选择更专业的设备。

### WAF、数据库防火墙、工控防火墙
虚拟补丁相当于把本应该打在数据库(或其他应用)上的修补放在服务器上，代位修复。

![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/fe411145567e41a65924d78996e9338d_MD5.png)

### 防火墙主要产品汇总
![](/wikis/_resources/%C2%A78.2%E2%AD%90%E9%98%B2%E7%81%AB%E5%A2%99%E7%B1%BB%E5%9E%8B%E4%B8%8E%E5%AE%9E%E7%8E%B0%E6%8A%80%E6%9C%AF/b12c7636e85f6801adffaca86e0ec408_MD5.png)
