OPENWRT 教程第十四章 防火墙开发之UCI方式
作者:互联网
防火墙配置
位于中的防火墙配置/etc/config/firewall
总览
OpenWrt依靠netfilter进行数据包过滤,NAT和处理。UCI防火墙提供了一个从iptables系统中抽象出来的配置接口,以提供适用于大多数常规用途的简化配置模型,同时使用户能够在需要时自行提供所需的iptables规则。
UCI防火墙将两个或多个接口映射到区域中,这些区域用于描述给定接口的默认规则,接口之间的转发规则以及前两个规则未涵盖的其他规则。在配置文件中,默认规则排在第一位,但最后一条生效。netfilter系统是一个链式处理过滤器,其中数据包通过各种规则。执行匹配的第一个规则,通常会导致另一个规则链,直到数据包达到ACCEPT或DROP / REJECT。这样的结果是最终的,因此默认规则最后生效,而最具体的规则首先生效。区域还用于配置伪装 也称为NAT(网络地址转换)以及端口转发规则,这些规则通常称为重定向。
区域必须始终映射到一个或多个最终映射到物理设备的接口。因此,区域不能用于指定网络(子网),并且生成的iptables规则仅在接口上运行。区别在于,当接口的子网包含另一个网关时,它们可以用于到达不属于其自身子网的目的地。但是,通常情况下,转发是在lan和wan接口之间完成的,路由器充当Internet的“边缘”网关。UCI防火墙的默认配置提供了这样的通用设置。
要求
firewall(或 firewall3)及其依赖项 (pre-installed) iptables (pre-installed) iptables-mod-?(可选),请参阅OPKG Netfilter软件包。
栏目
以下是可在防火墙配置中定义的部分类型的概述。路由器的最小防火墙配置通常包括一个默认部分,至少两个区域(lan
和wan
)和一个转发,以允许从lan
到的流量wan
。(如果区域不超过两个,则不严格要求转发部分,因为可以将规则设置为该区域的“全局默认值”。)
默认值
本defaults
节声明了不属于特定区域的全局防火墙设置。本节中定义了以下选项:
名称 | 类型 | 需要 | 默认 | 描述 |
---|---|---|---|---|
input |
string | 没有 | REJECT |
设置INPUT 表链的策略filter 。 |
output |
string | 没有 | REJECT |
设置OUTPUT 表链的策略filter 。 |
forward |
string | 没有 | REJECT |
设置FORWARD 表链的策略filter 。 |
drop_invalid |
boolean | 没有 | 0 |
丢弃无效的数据包(例如,不匹配任何活动连接)。 |
syn_flood |
boolean | 没有 | 0 |
启用SYN泛洪保护(被synflood_protect 设置废弃)。 |
synflood_protect |
boolean | 没有 | 0 |
启用SYN泛洪保护。 |
synflood_rate |
string | 没有 | 25 |
设置SYN数据包的速率限制(数据包/秒),超过该速率则认为流量泛滥。 |
synflood_burst |
string | 没有 | 50 |
设置SYN数据包的突发限制,如果流量超过允许的速率,则超过该流量将被视为洪泛。 |
tcp_syncookies |
boolean | 没有 | 1 |
启用SYN cookie的使用。 |
tcp_ecn |
boolean | 没有 | 0 |
|
tcp_westwood |
boolean | 没有 | 0 |
|
tcp_window_scaling |
boolean | 没有 | 1 |
启用TCP窗口缩放。 |
accept_redirects |
boolean | 没有 | 0 |
|
accept_source_route |
boolean | 没有 | 0 |
|
custom_chains |
boolean | 没有 | 1 |
|
disable_ipv6 |
boolean | 没有 | 0 |
禁用IPv6防火墙规则。 |
区域
甲zone
节组的一个或多个接口,并且用作源或目的地为forwardings,规则和重定向。外出流量的伪装(NAT)是按区域进行控制的。请注意,伪装是在传出接口上定义的。
- 区域的INPUT规则描述了试图通过该区域中的接口到达路由器本身的流量发生了什么。
- 区域的OUTPUT规则描述了来自路由器自身通过该区域中的接口的流量所发生的情况。
- 区域的FORWARD规则描述了该区域中不同接口之间通过的流量所发生的情况。
以下选项在zone
各节中定义:
标签:区域,防火墙,接口,boolean,UCI,规则,数据包,OPENWRT 来源: https://www.cnblogs.com/vx-cg248805770/p/12848685.html