Linux防火墙规则核心是“匹配即执行”,数据包自上而下匹配,命中即执行动作不再继续;顺序决定安全效果,须分清链与流向(INPUT/OUTPUT/FORWARD),匹配条件需具体(如-s限源IP),默认策略应设为DROP并优先放行可信流量。

Linux防火墙规则的核心逻辑是“匹配即执行”,不是“满足才放行”。iptables或nftables都遵循这一原则:数据包从上到下依次比对每条规则,一旦匹配,就立即执行对应动作(ACCEPT、DROP、REJECT等),不再继续检查后续规则。所以顺序决定安全效果,写错顺序可能让白名单失效、黑名单形同虚设。
规则链与数据流向必须分清
iptables有5个内置链(PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING),nftables结构更清晰但同样依赖钩子点。日常最常用的是INPUT(进来的连接)、OUTPUT(本机发出的)、FORWARD(转发流量)。别在INPUT链里配端口转发,也别在OUTPUT链里拦外部IP——方向错了,规则永远不生效。
- 对外提供Web服务?重点配INPUT链,开放TCP 80/443
- 本机要访问数据库?OUTPUT链一般默认允许,无需额外放开
- 做网关或Docker宿主机?FORWARD链必须显式控制,否则容器或VM可能绕过防护
匹配条件要具体,避免过度宽松
“-p tcp --dport 22 -j ACCEPT”看着简单,但如果没加-s指定来源IP,等于把SSH完全暴露。生产环境应坚持最小权限原则:
标签: linux docker 防火墙 端口 curl 黑名单
还木有评论哦,快来抢沙发吧~