linux包过滤防火墙
netfilter
位于Linux内核中
Linux防火墙的“内核态”
iptables
位于/sbin/iptables,用于管理防火墙规则的工具
Linux防火墙的“用户态”
包过滤:网络层,针对IP数据包
处理包内IP,端口等信息
iptables防火墙
规则表
1 | raw:确定是否对该数据包进行状态跟踪 |
规则链
1 | INPUT:处理入站数据包 |
动作
1 | ACCEPT:允许通过 |

规则表匹配顺序
1 | raw-->mangle-->nat-->filter |
规则链匹配顺序
1 | 入站:PREROUTING-->INPUT |
链内匹配顺序
依次检查,匹配则停止(LOG策略除外)
无匹配规则,则按该链默认策略处理

iptables基本语法
1 | iptables -t 表名 \ |
iptables参数
1 | -t:指定表,默认filter表 |
注意
使用nat规则必须配置内核文件,开启路由转发功能
1 | /etc/sysctl.conf |
导出iptables配置
iptables-save用于将linux内核中的iptables表导出到标准输出设备。
通常,使用shell中I/O重定向功能将其输出保存到指定文件中。
使用此功能可能需要安装1
yum install iptables-services
参数
1 | -c:指定要保存的iptables表时,保存当权的数据包计算器和字节计数器的值; |
例1
2iptables-save -t filter > iptables.bak
cat iptables.bak
例
本地端口转发
1 | 开启路由转发功能 |