做程序教程网站赚钱吗做机器人的网站
- 作者: 多梦笔记
- 时间: 2026年02月16日 16:05
当前位置: 首页 > news >正文
做程序教程网站赚钱吗,做机器人的网站,合肥手机建站模板,开发一个交友软件需要多少钱防火墙
随着终端系统漏洞频发#xff0c;保障其安全的压力越来越大。网络安全的重点逐渐转向如何通过防火墙来过滤网络流量#xff0c;从而在进入终端系统前进行安全控制。
当前主要的防火墙类型包括#xff1a;
包过滤防火墙#xff08;Packet-Filter Firewall#xf…防火墙
随着终端系统漏洞频发保障其安全的压力越来越大。网络安全的重点逐渐转向如何通过防火墙来过滤网络流量从而在进入终端系统前进行安全控制。
当前主要的防火墙类型包括
包过滤防火墙Packet-Filter Firewall代理防火墙Proxy Firewall
这两类防火墙的主要区别在于工作层级
包过滤防火墙工作在网络层或传输层代理防火墙工作在应用层
包过滤防火墙
包过滤防火墙通常是配置在网络边缘的路由器通过设定的过滤规则filters 或 访问控制列表ACL 来决定哪些数据包允许通过哪些应被丢弃。
常见过滤条件包括源/目的 IP 地址协议类型如 TCP、UDP、ICMP 源/目的端口号TCP 标志位如 SYN、ACK。
无状态防火墙每个数据包独立处理无法识别连接关系有状态防火墙能够跟踪连接状态识别属于同一连接的数据包处理 TCP 流或 IP 分片更可靠 但是其不检查应用层内容难以检测复杂攻击。无状态防火墙容易被 IP 分片等机制绕过。
代理防火墙
代理防火墙并非简单路由器而是具备多个网络接口的应用层网关ALG能够在应用层终止和中继 TCP/UDP 连接。客户端并不直接访问目标服务器而是将请求发送给防火墙由防火墙代理转发。
防火墙不启用 IP 转发客户端需要特殊配置明确代理地址和协议支持。内部接口通常使用私有 IP外部接口使用公网 IP。
优点
安全性更高可深入检查应用层协议易于实现访问控制和内容过滤支持缓存Web 代理和内容加速
缺点
灵活性差每种协议都需实现代理模块部署复杂新增服务需要额外配置对应用程序兼容性要求高如需支持 SOCKS
HTTP 代理防火墙Web Proxy 支持 HTTP 和 HTTPS可作为 Web 缓存减少带宽消耗支持内容过滤如黑名单。
SOCKS 防火墙支持多种应用层协议不止 Web应用程序需支持 SOCKS 协议并进行配置。 网络地址转换
NATNetwork Address Translation是一种机制允许在互联网的不同位置重复使用相同的私有 IP 地址集合。其本质是通过重写数据包中的地址信息实现内部私有地址与外部公共地址之间的映射。
NAT 的常见使用场景一个站点仅有一个公网 IP却有多台内部主机需要访问互联网。所有出入流量统一经过一个 NAT 设备从而将内部网络与公网隔离。内部主机使用私有地址如 192.168.x.x、10.x.x.x通过 NAT 访问互联网。 NAT 的缺点 服务提供困难私有地址的主机无法被公网直接访问部署 Web 或 FTP 服务需做额外配置如端口映射。 会话依赖所有双向通信的数据包必须通过同一个 NAT 设备否则状态无法同步连接失败。 协议干扰某些协议如 FTP、SIP会在应用层载荷中嵌入 IP 地址NAT 无法自动识别需特殊处理如 ALG。 违反互联网设计哲学传统互联网设计理念是“哑中间智能边缘”而 NAT 属于“智能中间”破坏了端到端模型。 状态依赖性高NAT 设备必须记录每个连接的状态对性能和稳定性提出更高要求。 校验和处理复杂改写 IP 后还必须更新传输层TCP/UDP的校验和涉及伪头部字段。
许多 NAT 同时具备包过滤功能如只允许内部发起的连接。动态状态表决定是否允许一个数据包通过如判断是否是已建立连接的响应包。
传统的NAT基本NAT和NAPT
基本 NAT仅重写 IP 地址需要多个公网地址节省 IP 效果不佳。
NAPT网络地址端口转换重写 IP 和端口通过端口号区分内部主机支持大规模主机共享少量公网 IP是最常用的 NAT 形式。 NAT 与 TCP
TCP 连接通过两端的 IP 和端口唯一标识。典型的三次握手SYN → SYN-ACK → ACK必须完整穿越 NAT。NAT 在检测到出站的 SYN 包后会创建一个地址与端口映射用于将私有地址转换为公网地址并转发数据包。响应到达时NAT 再据此进行反向转换称为“端口保留”。
为管理连接状态NAT 会设定会话计时器。在连接空闲时可能通过发送探测包确认连接是否仍存活。若接收 RST 包或探测无响应NAT 会清除会话。RFC5382 要求 NAT 至少保留正常连接状态 2 小时 4 分钟半开连接至少保留 4 分钟。
点对点应用中常使用“同时发起连接”即双方几乎同时发送 SYN 包。许多 NAT 无法处理此类同步建立连接的场景因此 RFC 要求 NAT 必须支持此类合法的 TCP 报文交换并在外部 SYN 到达后等待至少 6 秒以便内侧主机发起连接。
NAT 不仅转换地址和端口还必须理解 TCP 状态保障连接的建立、维持与终止过程的正确性。
NAT 与 UDP
UDP 无连接缺乏类似 TCP 的 SYN/FIN 标志NAT 难以识别连接起止。NAT 使用 映射计时器mapping timer 清理不活跃状态。[RFC4787] 要求最小超时时间为 2 分钟推荐值为 5 分钟。NAT 的映射刷新方式 对外刷新行为outbound refresh内部发送数据时刷新强制要求。对内刷新行为inbound refresh外部发送数据时刷新可选。 分片问题UDP/IP 分片中仅首片包含端口信息后续分片无法供 NAT/NAPT 正确处理。同样影响 TCP 和 ICMP 的分片处理。
NAT 与 DCCP/SCTP
DCCPDatagram Congestion Control Protocol为数据报提供拥塞控制服务。SCTPStream Control Transmission Protocol 提供多宿主可靠传输。NAT 处理需考虑地址绑定与路径管理。
NAT 与 ICMP
ICMP 包括两类报文 错误报文如端口不可达通常携带原始数据包副本NAT 需进行 ICMP fix-up即修正嵌入数据包中的地址。信息报文如 Echo 请求包含 查询 ID 字段NAT 可识别请求设置计时器等待响应。 [RFC5508] 明确了 ICMP 报文在 NAT 中的处理行为。
NAT 与 隧道数据包
隧道协议如 PPTP 中的 GRE通过 NAT 时需要同时处理封装头部。GRE 中的 Call-ID 可能与其他连接冲突需 NAT 正确映射。多层封装增加 NAT 解析和转换的复杂度。
NAT 与 组播
虽然主要用于单播NAT 也可以配置支持 组播。[RFC5135] 定义了 NAT 支持组播的行为要求。支持组播需启用 IGMP 代理见 [RFC4605]。NAT 内部主机发送组播时 目的地址和端口不修改源地址和端口可能会根据单播 UDP 的规则进行 NAT 转换。
NAT 与 IPv6
在 IPv6 中使用 NAT 是有争议的见 [RFC5902] IPv6 地址充足无需地址节省NAT 增加协议复杂度替代方案为 本地网络保护LNP见 [RFC4864]可提供防火墙、隐私保护、拓扑隐藏。 IPv6 中的替代 NAT 机制NPTv6Network Prefix Translation v6 [RFC6296] 提出基于前缀算法将地址从一个 IPv6 范围映射到另一个保留 TCP/UDP 校验和不需访问端口信息无需维护状态降低复杂性不提供包过滤功能需额外防火墙支持应用需借助 ALG 或 NAT 穿越机制访问外部资源。
地址和端口转换行为
NAT 的地址和端口映射行为多种多样IETF 的 BEHAVE 工作组提出了标准化建议以促进互操作性。
表示形式X:x → Y:y X:x内部私有地址与端口例如来自 RFC1918Y:y远程公网地址与端口映射后 NAT 使用X:x 若连接多个外部主机如 Y1:y1 → Y2:y2可能使用相同的 X’端口 x’ 若复用即为 端口保留port preservation若端口冲突NAT 必须进行端口映射调整 过滤行为
当NAT为一个TCP连接、UDP关联或各种形式的ICMP流量创建一个绑定不仅要创建地址和端口映射作为一个防火墙还必须确定返回流量的过滤行为这是非常常见的情况。
行为名称过滤行为说明独立于端点只要 X1:x1 存在允许任意对端返回最宽松依赖于地址仅允许曾通信的 IP 地址返回中等严格依赖于地址和端口仅允许曾通信的 IP端口 返回最严格
位于NAT之后的服务器
NAT 的一大局限是 外部主机无法直接访问 NAT 内部的服务器主要原因
路由限制公网主机无法路由到私有地址如 10.0.0.3。NAT控制NAT 默认不转发目的为私有地址的入站流量。
为解决上述问题端口转发又称端口映射被引入。其将 NAT 的某个外部端口映射到内部主机的地址和端口允许公网用户通过 NAT 的公网地址访问 NAT 内部的私有服务。通常需要手动配置静态映射。
发夹和NAT环回
当一台主机希望通过 NAT 映射的公网地址 访问 同一 NAT 私网内的另一主机时就需要 NAT 支持发夹或环回功能。
假设 NAT 内部有两台主机
X1 想连接到 X2X1 只知道 X2 的外部地址信息X2′:x2′而非私网地址
此时X1 向 X2′:x2′ 发起连接请求NAT 必须将该连接 “转回来” 给内部的 X2:x2 —— 这就是 发夹转发。 为完成连接NAT 必须
识别目标地址 属于 NAT 自己的映射。将请求回转 到 NAT 私有网络中的对应主机X2:x2。决定源地址使用何者 X1′:x1′外部映射地址 → 推荐X1:x1私网地址 → 不推荐
NAT穿越
传统在 NAT 设备中嵌入 ALG 或 NAT 编辑器的方式非常复杂因此很多应用程序开始 主动尝试实现 NAT 穿越以确保位于 NAT 后的终端能够直接通信。
NAT 穿越的基本目标
获取自身的外部地址与端口映射协调位于不同 NAT 后的客户端之间建立连接避免使用中继服务器转发数据降低负载与延迟
如果实在无法建立直连一种替代方法是服务器作为 数据中继 —— 不推荐但有时不得不为之如 TURN。
针孔和打孔
当一个客户端向外部建立连接时NAT 会动态地为这条流量创建一个映射IP 端口对。映射是临时存在并且通常只允许该对端返回流量。 这个映射就像在 NAT 上开了一个“小洞”。
基于针孔映射让两个位于 NAT 后的客户端尝试彼此通信。一般由一个 协调服务器辅助完成地址信息交换。 UDP 打孔流程也适用于部分 TCP 场景
客户端 A 向服务器 S1 建立连接NAT N1 创建映射。客户端 B 向 S1 建立连接NAT N2/N3 创建映射。S1 记录 A 与 B 的外部地址如 A → 192.0.2.201B → 203.0.113.100。S1 将彼此的地址告知双方。A 与 B 尝试通过对方的外部地址直接通信。若 NAT 行为允许则打孔成功。
STUN协议
STUN 是一种轻量级的客户端/服务器协议主要用于协助客户端识别其位于 NAT 后的 公网 IP 和端口并维持 NAT 映射。 ⚠️ STUN 不是万能方案在复杂 NAT 或对称 NAT 下可能失效。常与 ICE、TURN 联合使用。 每个 STUN 报文包含
报文类型前2位固定为0报文长度不包含头部的20字节魔术 cookie固定值 0x2112A44296 位事务 ID零个或多个 TLV 格式的属性 假设客户端位于 NAT 后地址为 Xx它通过 STUN 服务器 Y1:y1 请求其公网地址
服务器在响应中添加 MAPPED-ADDRESS 或 XOR-MAPPED-ADDRESS 属性客户端据此获得自己的公网地址 X1:x1即“反射地址”
为什么使用 XOR-MAPPED-ADDRESS
避免 ALGApplication-Level Gateway劫持或修改 STUN 报文中的 IP 地址XOR 加密使 ALG 无法识别或干预地址字段提高协议鲁棒性
利用中继NAT穿越
TURNTraversal Using Relays around NAT 是一种用于在 NAT 后主机之间通信的最终手段。 使用中继服务器转发数据即便双方都处于不同 NAT 后也能通信。 工作机制
位于 NAT 后的客户端连接公网 TURN 服务器。TURN 服务器为客户端分配 中继传输地址Relayed Transport Address反射地址Reflexive Address 客户端和 peer 使用 TURN 地址交换信息但 TURN 本身不负责地址交换需借助 ICE 等机制。
分配与连接控制
客户端使用 Allocate 方法申请中继地址并通过 STUN 长期认证机制验证身份。分配的生命周期默认 10 分钟可通过 LIFETIME 属性修改。客户端使用 Refresh 方法刷新分配状态生命周期为 0 时释放分配。TURN 的5元组标识客户端 IP/端口 服务器 IP/端口 协议
客户端使用 CreatePermission 方法创建允许通信的 peer 地址权限。权限默认有效期为 5 分钟未刷新则自动删除。TURN 服务器只转发来源地址匹配的 peer 的数据。
方式一Send / DataSTUN 封装使用 STUN 报文传输数据。开销较大适用于通用场景。
方式二Channel / ChannelBind隧道建立轻量隧道channel使用 4 字节报头。延迟更低、效率更高适用于实时通信如 VoIP。每个分配最多支持 16K 个隧道。
TURN通过6种方法、9个属性以及6个错误响应代码增强STUN。这些大致可以分为支持建立和维护分配、认证以及操作隧道。6种方法和它们的方法号如下分配Allocate3刷新Refresh)4发送Send)6数据Data)7创建权限CreatePermission)8),隧道绑定ChannelBind)(9。前两种方法用于建立并保持分配存活。Send和Data使用STUN报文封装从客户端发送到服务器的数据反之亦然。
GreatePermission用于创建或刷新一个权限ChannelBind通过一个16位的隧道号与一个特定的对等客户端相关联。错误报文表明与TURN功能相关的问题如认证失败或资源耗尽例如隧道数)。 交互连接建立
ICERFC 5245 是一种通用机制用于帮助处于 NAT 后的 UDP 应用主机建立连接。是一种启发式的 NAT 穿越方法统筹利用 STUN 和 TURN 协议。最初用于 SIP/SDP 通信中的 媒体流穿越但也被扩展到其他应用如 XMPP。可扩展支持基于 TCP 的应用连接建立。
在存在多个候选地址主机地址、反射地址、中继地址时 优先尝试直连主机、反射 保底使用中继TURN。通过“连接性检查connectivity checks”找到最优的传输路径。最终形成一个可达的“候选对candidate pair”。
ICE 关键流程 候选地址发现 类型包括 主机地址host反射地址server reflexive中继地址relayed对等反射地址peer reflexive 使用 STUN 和 TURN 协议获取各类地址。 优先级分配 启发式算法将低延迟、直连路径排在前面。本地代理生成本地候选地址优先级列表。 交换 SDP 使用 SDP如 SIP 协议将候选地址和优先级发送给对等代理。 候选对生成 双方各自形成候选地址后进行两两组合得到候选对集合candidate pair set。 连接性检查 通过 STUN 绑定请求带地址信息验证每对地址是否可达。响应成功的对成为“可用的候选对”。 选定候选对 控制代理controlling agent 负责最终选择。可选择 常规选定regular nomination测试所有候选后决定。积极选定aggressive nomination一旦找到可用对就立即确定。 路径优化与地址更新 如果在检查过程中发现新的 NAT 路径会生成新的 peer reflexive candidate 并更新列表。 所有检查均通过 STUN 绑定请求/响应 完成。使用 STUN 的短期认证机制 保证请求可信。FINGERPRINT 属性 校验消息完整性。STUN 响应中可暴露新 NAT 地址生成对等反射候选。
配置包过滤防火墙和NAT
NAT 通常配置较少除非使用端口转发Port Forwarding。
防火墙 需要明确指定匹配条件和对应动作配置工作较复杂。
防火墙规则
防火墙通过 ACL 来配置规则控制哪些流量被允许或阻止。每条规则包含
匹配条件IP 地址、端口、协议、ICMP 类型、方向等。动作Action如 ACCEPT, DROP, LOG, QUEUE 等。
不同方向流入/流出可以使用不同的规则集。有的系统可在 路由决策之前/之后 应用规则。匹配顺序通常是自上而下遍历规则匹配到第一个规则后立即执行对应动作。
iptables 是 Linux 系统中常见的防火墙配置工具。基于 Netfilter 内核框架。支持无状态stateless与有状态stateful过滤。 表table filter基础包过滤natNAT 操作mangle对数据包字段进行修改 链chain filter 表默认链 INPUT目标是本机的包FORWARD转发通过的包OUTPUT本机发送的包 nat 表默认链 PREROUTING、OUTPUT、POSTROUTING mangle 表链支持额外字段修改 -P INPUT DROP 默认丢弃所有进入的包除非另有规则 -i lo -j ACCEPT 接受本地 loopback 通信 DHCP 规则 接受来自 0.0.0.0:67 到 255.255.255.255:68 的 DHCP 广播 TCP Flags 过滤 过滤掉标志字段全为0的可疑 TCP 报文通常为扫描/异常流量
NAT规则
在多数简单的家用路由器中NAT 与防火墙功能通常集成。
Windows 系统中 NAT 被称为 ICSInternet Connection Sharing。Linux 系统中称为 IP 伪装IP Masquerading。
启用 ICS 后系统会自动完成以下配置
将运行 ICS 的主机设置为192.168.0.1启动 DHCP 服务器为其他主机分配地址默认网段192.168.0.0/24启动 DNS 代理服务ICS 主机作为网关和 DNS
- 上一篇: 做城市分类信息网站好做吗手机号电子邮箱免费注册
- 下一篇: 做程序题的国外网站免费做试卷的网站或试卷
相关文章
-
做城市分类信息网站好做吗手机号电子邮箱免费注册
做城市分类信息网站好做吗手机号电子邮箱免费注册
- 站长
- 2026年02月16日
-
做超市dm的网站上海网站设计工具
做超市dm的网站上海网站设计工具
- 站长
- 2026年02月16日
-
做产品网站需要注意百度账号快速注册入口
做产品网站需要注意百度账号快速注册入口
- 站长
- 2026年02月16日
-
做程序题的国外网站免费做试卷的网站或试卷
做程序题的国外网站免费做试卷的网站或试卷
- 站长
- 2026年02月16日
-
做冲压件加工有什么好网站台州制作网站软件
做冲压件加工有什么好网站台州制作网站软件
- 站长
- 2026年02月16日
-
做宠物的网站主题思想常州知名网站
做宠物的网站主题思想常州知名网站
- 站长
- 2026年02月16日
