Linux防火墙核心工具是iptables,它直接操作内核Netfilter,规则即时生效但不持久;需按“表→链→规则”层级配置,四表(filter/nat/mangle/raw)对应不同功能,五链(INPUT/OUTPUT/FORWARD/PREROUTING/POSTROUTING)对应数据包生命周期;基础操作为查(-L)、清(-F)、配(-A),默认策略设为DROP前须先添加允许回环、已建立连接及必要服务的规则;规则需保存至文件并配置开机加载以实现持久化。

Linux 防火墙配置的核心工具是 iptables,它不是独立服务,而是直接操作内核 Netfilter 框架的命令行工具。规则一旦添加立即生效,无需重启,但默认不持久——关机后会丢失,需手动保存。配置的关键在于理解“表→链→规则”的层级结构,并按数据流向合理组织策略。
先搞清四表五链:别乱加规则的底层逻辑
iptables 不是堆规则,而是分层处理数据包:
-
四表:按功能划分规则集合
— filter 表(默认):负责“放行还是拒绝”,最常用,含 INPUT/OUTPUT/FORWARD 链
— nat 表:做地址转换(如端口映射、SNAT/DNAT),含 PREROUTING/POSTROUTING/OUTPUT 链
— mangle 表:修改数据包(如 TOS、TTL),极少手动配置
— raw 表:关闭连接跟踪(conntrack),用于特殊高性能场景 -
五链:按数据包生命周期挂载规则
— INPUT:目标是本机的数据包(如 SSH 连接、Web 请求)
— OUTPUT:本机主动发出的数据包
— FORWARD:经本机转发的数据包(路由器或网关模式)
— PREROUTING:路由前处理(DNAT 在这里改目的地址)
— POSTROUTING:路由后处理(SNAT 在这里改源地址)
基础操作三步走:查、清、配
刚上手建议从干净环境开始,避免旧规则干扰:
-
查规则:
iptables -L -n -v查看 filter 表所有链(数字显示 IP/端口,带统计)
加--line-numbers可显示序号,方便后续删除或插入 -
清规则:
iptables -F清空 filter 表所有链;iptables -X删除用户自定义链
注意:-F不影响默认策略(policy),如 INPUT 默认是 ACCEPT,仍需显式设置 -
设默认策略(白名单前提):
iptables -P INPUT DROP
这条命令意味着:没被明确允许的入站包一律丢弃。务必在添加允许规则后再执行,否则可能锁死 SSH
写好第一条允许规则:保命+实用
典型安全起点(按顺序添加,iptables 自上而下匹配):
标签: linux centos 防火墙 路由器 端口 ubuntu 工具 路由 防火墙配置
还木有评论哦,快来抢沙发吧~