TypechoJoeTheme

至尊技术网

统计
登录
用户名
密码

Linux防火墙基石:iptables基础语法与配置指南

2025-08-27
/
0 评论
/
3 阅读
/
正在检测是否收录...
08/27


一、iptables架构解析

作为Linux内核集成的包过滤系统,iptables通过规则链(Chains)和表(Tables)的层级结构实现网络流量控制。其核心包含三张表:
- filter表(默认):负责数据包过滤
- nat表:处理网络地址转换
- mangle表:修改数据包头部信息

每条链对应数据包传输的关键节点:
- INPUT:处理进入本机的数据
- OUTPUT:处理本机发出的数据
- FORWARD:处理经本机转发的数据

二、基础语法规范

iptables命令遵循标准结构:
bash iptables [-t 表名] 命令选项 链名 [规则匹配] -j 目标动作

常用命令选项

| 选项 | 功能说明 |
|------|--------------------------|
| -A | 在链尾追加规则 |
| -I | 在指定位置插入规则 |
| -D | 删除特定规则 |
| -L | 列出当前规则 |
| -F | 清空链中所有规则 |
| -P | 设置链的默认策略 |

典型匹配条件

bash -p tcp/udp/icmp # 协议类型 --dport 22 # 目标端口 -s 192.168.1.0/24 # 源IP段 -i eth0 # 输入网卡 -m state --state NEW # 连接状态

三、实战配置示例

1. 基础防护规则

bash

允许已建立的连接

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

开放SSH端口

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

默认拒绝所有入站流量

iptables -P INPUT DROP

2. NAT转发配置

实现内网机器通过网关访问外网:bash

启用IP转发

echo 1 > /proc/sys/net/ipv4/ip_forward

配置源地址转换

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth1 -j ACCEPT

3. 端口映射案例

将外网8080端口映射到内网服务器80端口:
bash iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to 192.168.1.100:80 iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.100 --dport 80 -j SNAT --to 网关IP

四、规则持久化技巧

临时规则重启后会丢失,需通过工具保存:
- RHEL/CentOS
bash service iptables save
- Debian/Ubuntu
bash apt install iptables-persistent netfilter-persistent save

五、调试与排错

  1. 查看规则生效顺序:
    bash iptables -L -n --line-numbers

  2. 监控实时流量匹配:
    bash iptables -A INPUT -j LOG --log-prefix "[IPTABLES DEBUG] " tail -f /var/log/syslog

  3. 测试规则有效性:
    bash nc -zv 目标IP 端口号

掌握iptables需要理解其"匹配即停止"的工作机制,建议通过白名单方式逐步构建安全策略。对于复杂环境,可考虑结合ipset管理IP集合提升规则执行效率。

iptables防火墙Linux安全策略网络包过滤NAT转发规则链配置
朗读
赞(0)
版权属于:

至尊技术网

本文链接:

https://www.zzwws.cn/archives/36894/(转载时请注明本文出处及文章链接)

评论 (0)