LINUX怎么配置iptables规则_Linux配置iptables防火墙方法

LINUX怎么配置iptables规则_Linux配置iptables防火墙方法
最新回答
痛ろ哭ろ

2026-10-30 13:50:43

在Linux系统中配置iptables防火墙规则,可通过定义链和规则实现网络流量控制。以下是具体操作步骤:

一、查看当前iptables规则

修改规则前需确认现有配置,避免误操作。

  • 查看默认表(filter)规则:sudo iptables -L -n -v
  • 查看其他表(如nat、mangle)规则:sudo iptables -t nat -L -n -v
  • 确认链策略:检查INPUT、OUTPUT、FORWARD链的默认策略是否符合预期。
二、添加基本访问控制规则

通过追加规则到链(INPUT/OUTPUT/FORWARD)实现流量控制。

  • 允许本地回环通信:sudo iptables -A INPUT -i lo -j ACCEPT
  • 允许已建立连接的数据包:sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  • 开放SSH端口(22):sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  • 拒绝未匹配的入站请求:sudo iptables -A INPUT -j DROP
三、配置端口转发规则

作为网关或重定向外部请求时,需在nat表中配置端口映射。

  • 启用IP转发:sudo sysctl -w net.ipv4.ip_forward=1
  • 添加DNAT规则(外部80端口映射到内网Web服务器):sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:80
  • 配置POSTROUTING链进行源地址转换:sudo iptables -t nat -A POSTROUTING -j MASQUERADE
四、保存并持久化规则

默认规则重启后丢失,需保存至配置文件。

  • 安装持久化工具(Debian/Ubuntu):sudo apt install iptables-persistent netfilter-persistent
  • 保存当前规则:sudo netfilter-persistent save
  • 手动备份规则:sudo iptables-save > /etc/iptables/rules.v4
五、清除现有规则

调试或部署新策略前需重置防火墙。

  • 设置默认策略为ACCEPT:sudo iptables -P INPUT ACCEPTsudo iptables -P OUTPUT ACCEPTsudo iptables -P FORWARD ACCEPT
  • 清空所有规则:sudo iptables -F
  • 删除用户自定义链:sudo iptables -X
注意事项
  • 操作权限:所有命令需使用sudo或root用户执行。
  • 规则顺序:iptables按规则顺序匹配,需将严格规则放在宽松规则前。
  • 测试验证:修改规则后,通过ping、telnet等工具测试连通性。
  • 备份配置:重大修改前建议备份规则(sudo iptables-save > backup.rules)。

通过以上步骤,可系统化配置iptables防火墙,实现网络流量控制与安全防护。