Linux防火墙规则编写核心是理解流量流向、精准匹配条件、合理组织策略顺序;需明确链与表职责,坚持“默认拒绝”原则,善用匹配模块提升精度,并及时保存、备份与排错。

Linux防火墙规则编写核心在于理解流量流向、精准匹配条件、合理组织策略顺序。用好iptables或nftables,关键不是堆砌规则,而是让每一条都可读、可维护、可验证。
明确链(Chain)和表(Table)的职责
iptables默认有filter、nat、mangle三张表,日常最常用的是filter表下的INPUT、OUTPUT、FORWARD链:
- INPUT:处理目标是本机的数据包(如SSH连接、Web服务请求)
- OUTPUT:处理本机主动发出的数据包(如curl访问外网)
- FORWARD:仅在做路由/网关时启用,处理经过本机转发的流量
写规则前先确认你要控制的是哪类流量,再选对链和表,避免在OUTPUT链里拦HTTP出站请求这类常见误操作。
从“默认拒绝”开始,逐步放行
安全基线应是“先堵后通”。建议初始化策略为:
iptables -P INPUT DROP<br>iptables -P FORWARD DROP<br>iptables -P OUTPUT ACCEPT
登录后复制
然后按需添加白名单规则,例如:
- 允许本地回环:
iptables -A INPUT -i lo -j ACCEPT - 允许已建立连接返回:
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT - 开放SSH端口(建议改非标端口后使用):
iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
注意:-A 是追加,-I 是插入(默认插到第一条),调试阶段常用 -I 临时测试,稳定后再用 -A 固化顺序。
标签: linux centos go 防火墙 端口 ubuntu curl ai 路由
还木有评论哦,快来抢沙发吧~