欢迎来到之路教程(on itroad-com)

重新启动后不加载 iptables 规则

我们已经设置并保存了 iptables 防火墙规则,但在重新启动后它们仍未加载。
重新启动后,不会加载 iptables 规则,而是:
由于未保存/应用新规则,因此需要重新定义防火墙规则。

必须重新启动 iptables 服务才能加载规则。

故障排除

  1. 验证服务是否设置为开机启动:
# chkconfig iptables --list
iptables          0:off   1:off   2:off   3:on    4:on    5:on    6:off
  1. 如果iptables关闭,则为runlevels 3-5启用服务
# chkconfig iptables on
  1. 确保规则已保存到磁盘

3-1. 验证新规则是否保存在 /etc/sysconfig/iptables 中。

3-2. 如果没有保存,则通过以下两种方法之一设置后保存当前规则:

通过iptables服务命令保存规则:

# service iptables save

将以下命令的输出保存到 /etc/sysconfig/iptables 文件。

我们还可以通过手动将规则写入文件来保存规则。

# iptables-save
  1. 确保iptables模块在启动时加载

4-1. 验证启动后立即加载了iptables模块。

RHEL 5 输出应该类似于:

# lsmod | grep tables
ip_tables              55457  1 iptable_filter
ip6_tables             50177  1 ip6table_filter
x_tables               50505  6 ipt_REJECT,xt_state,ip_tables,ip6t_REJECT,xt_tcpudp,ip6_tables

RHEL 6 输出应该类似于:

# lsmod | grep table
iptable_filter          2793  1 
ip_tables              17831  1 iptable_filter
ip6table_filter         2889  1 
ip6_tables             19458  1 ip6table_filter

4-2. 如果模块加载失败,请从 modprobe 配置中删除 iptables 模块的所有黑名单行。

# grep -r iptables /etc/modprobe*
/etc/modprobe.d/blacklist.conf:blacklist iptables
/etc/modprobe.d/blacklist.conf:blacklist ip6tables
  1. 检查规则表,看它们是否为空或者缺少规则
    以下是已刷新或者空表的示例:
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
Chain RH-Firewall-1-INPUT (0 references)
target     prot opt source               destination
  1. 验证规则文件在重启后没有改变
# cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bkp
# reboot
# sdiff -s /etc/sysconfig/iptables /etc/sysconfig/iptables.bkp
  1. 查看重启iptables服务是否成功加载规则
    检查启动后是否需要运行“service iptables restart”并正常加载表。
# service iptables restart
# service iptables status
CentOS/RHEL:iptables 故障排除

iptables 实用程序控制 Linux 内核中的网络包过滤代码。
iptables 功能用于在 Linux 内核中设置、维护和检查 IP 包过滤规则表。
这篇文章讨论了 iptables 最常遇到的问题以及如何解决这些问题。

日期:2020-09-17 00:12:20 来源:oir作者:oir