MikroTik RouterOS 防火墙规则配置要点整理

发布于2026-08-15 11:52 阅读11次 整理 MikroTik RouterOS 防火墙配置的核心要点,涵盖默认策略设置、fasttrack 加速、端口映射与回流、连接追踪限制等实用规则,帮助网络管理员快速搭建安全的防火墙体系。
# MikroTik RouterOS 防火墙规则配置要点整理
## 前言
RouterOS 的防火墙功能强大,但新手面对 Chain、Action、Connection Tracking 这些概念容易懵。本文整理一套可落地的配置思路和常用规则,配合 WinBox 或命令行都能操作。
## 基础概念
RouterOS 防火墙有三大默认 Chain:
- **input**:目标是路由器本身的流量
- **forward**:经过路由器转发的流量
- **output**:路由器自己发出的流量
还有 prerouting、postrouting 用于 NAT,以及自定义 chain。
## 第一步:默认策略
```bash
# 默认拒绝,白名单放行
/ip firewall filter
add chain=input action=drop comment="drop all input"
# 但在此之前,先放行必要的
/ip firewall filter
add chain=input connection-state=established,related action=accept
add chain=input protocol=icmp action=accept
add chain=input in-interface=bridge action=accept comment="允许内网访问"
```
注意:规则从上到下匹配,先 accept 后 drop。
## 第二步:Fasttrack 加速
开启 fasttrack 能大幅降低 CPU 占用,尤其在高带宽场景:
```bash
/ip firewall filter
add chain=forward action=fasttrack-connection connection-state=established,related comment="fasttrack"
add chain=forward action=accept connection-state=established,related
```
fasttrack 规则要放在其他 forward 规则之前,且 fasttrack 后无法再匹配其他规则。
## 第三步:端口转发(DNAT)
```bash
# 外网 8080 转发到内网 192.168.1.10 的 80
/ip firewall nat
add chain=dstnat protocol=tcp dst-port=8080 action=dst-nat to-addresses=192.168.1.10 to-ports=80
```
### 回流(Hairpin NAT)
内网设备通过公网 IP 访问自己的服务器时,需要回流规则:
```bash
/ip firewall nat
add chain=srcnat src-address=192.168.1.0/24 dst-address=192.168.1.10 protocol=tcp dst-port=80 action=masquerade
```
否则内网访问公网域名会失败。
## 第四步:源 NAT(上网)
```bash
# 内网上网做 NAT 伪装
/ip firewall nat
add chain=srcnat src-address=192.168.1.0/24 out-interface=pppoe-out1 action=masquerade
```
如果有多条出口,可以用 src-nat 指定出口地址替代 masquerade。
## 第五步:限制连接数防滥用
```bash
# 限制单 IP 并发连接
/ip firewall filter
add chain=forward protocol=tcp src-address=192.168.1.0/24 connection-limit=100,32 action=drop
```
connection-limit 的第一个值是连接数上限,第二个是掩码(32 表示精确到单 IP)。
## 第六步:阻断常见攻击
```bash
# 阻断端口扫描
/ip firewall filter
add chain=input protocol=tcp psd=21,3s,3,1 action=drop
# 阻断内网到外网的 ICMP(可选)
add chain=forward protocol=icmp src-address=!192.168.1.1 action=drop
```
## 常用排查命令
```bash
# 查看所有规则
/ip firewall filter print
# 查看 NAT 规则
/ip firewall nat print
# 查看连接表
/ip firewall connection print count-only
# 实时查看流量
/ip firewall connection print where dst-address=192.168.1.10
```
## 小结
RouterOS 防火墙配置记住三点:
- input 保护路由器本身,forward 控制转发,NAT 负责地址转换
- fasttrack 放最前提升性能
- 默认 drop,按需 accept
配合连接追踪和限制,就能构建一套稳固的防火墙。