Linux 防火墙(Netfilter)使用指南
1. Netfilter 链与表
Netfilter 是 Linux 内核中的网络数据包过滤框架,其规则主要通过不同的链和表来实现。以下是几个重要的链:
- INPUT 链 :用于处理进入主机的数据包。只有当数据包的目标地址是 172.16.1.1 时,INPUT 链中的规则才会生效。例如,若有规则丢弃所有目标端口为 80 的数据包,那么监听该端口的应用程序将无法收到此类数据包。此链会调用 filter 和 mangle 表中的规则。
- OUTPUT 链 :当主机上运行的应用程序发送数据包时,会触发 OUTPUT 链。例如,管理员使用 SSH 在命令行界面连接远程系统时,OUTPUT 链会处理连接的第一个数据包。远程主机返回的数据包则会通过 PREROUTING 和 INPUT 链进入。除了 filter 和 mangle 表,OUTPUT 链还可调用 NAT 表中的规则,这使得管理员能对主机自身生成的出站数据包进行 NAT 转换。
- POSTROUTING 链 :该链可调用 NAT 和 mangle 表中的规则。管理员可在此链中更改源 IP 地址,以实现源网络地址转换(SNAT),同时也可进行连接跟踪,用于构建防火墙。
2. 安装 Netfilter
在现代 Linux 发行版中,通常已预装并编译好 iptables Netfilter。可通过以下命令快速检查:
[root@server ~]# ipt
超级会员免费看
订阅专栏 解锁全文
3

被折叠的 条评论
为什么被折叠?



