linux 自启动iptable_保存iptable规则并开机自动加载

iptables-save

利用iptables-save命令可以将iptable规则保存到一个持久化存储的目录中,不同的系统保存的目录也有所不同(IPv4):

Debian/Ubuntu: iptables-save > /etc/iptables/rules.v4

RHEL/CentOS: iptables-save > /etc/sysconfig/iptables

保存之后,可以通过iptables-restore命令载入(IPv4):

Debian/Ubuntu: iptables-restore < /etc/iptables/rules.v4

RHEL/CentOS: iptables-restore < /etc/sysconfig/iptables

上面是针对IPv5的规则,如果你有使用IPv6的规则,通常需要执行下面对应的IPv6保存和恢复的命令(IPv4:

Debian/Ubuntu: ip6tables-save > /etc/iptables/rules.v6RHEL/CentOS: ip6tables-save > /etc/sysconfig/ip6tables

注意: 这种方式只是保存规则和恢复的一种方式,并不是说保存规则后下次启动就会自动加载。

第一种开机启动方式

Debian/Ubuntu 系统:

iptables-save > /etc/iptables.up.rules

echo -e '#!/bin/bash\n/sbin/iptables-restore < /etc/iptables.up.rules' > /etc/network/if-pre-up.d/iptables

chmod +x /etc/network/if-pre-up.d/iptables

一定要记住这点,如果要想系统启动后自动加载请看下面的方式。

第二种开机启动方式:iptables-persistent (Debian/Ubuntu)

从 Ubuntu 10.04 LTS (Lucid) 和 Debian 6.0 (Squeeze) 版本开始,可以通过安装一个名为 “iptables-persistent” 的包,安装后它以守护进程的方式来运行,系统重启后可以自动将保存的内容加载到iptables中。当然前提也是需要先保存规则。

安装

apt-get install iptables-persistent

保存规则

service  iptables-persistent save* Saving rules...                                                                                                                                                                 *  IPv4...                                                                                                                                                                        *  IPv6...ls -1 /etc/iptables/rules.v4rules.v6cat  /etc/iptables/rules.v4# Generated by iptables-save v1.4.21 on Thu Aug 20 08:59:52 2015*filter:INPUT ACCEPT [5726:774869]:FORWARD ACCEPT [170:27598]:OUTPUT ACCEPT [5467:789045]COMMIT# Completed on Thu Aug 20 08:59:52 2015# Generated by iptables-save v1.4.21 on Thu Aug 20 08:59:52 2015*nat:PREROUTING ACCEPT [23:1596]:INPUT ACCEPT [0:0]:OUTPUT ACCEPT [9:540]:POSTROUTING ACCEPT [0:0]-A POSTROUTING -s 10.0.0.0/16 -o eth0 -j MASQUERADECOMMIT# Completed on Thu Aug 20 08:59:52 2015

RHEL 和 CentOS 保存规则

RHEL/CentOS 提供了简单的方式来持久化存储iptables规则,可以直接通过iptables服务的命令来完成:

chkconfig --list | grep iptablesiptables       0:off1:off2:on3:on4:on5:on6:off# 如果不是开机启动,需要执行下面命令chkconfig iptables on# 保存规则service iptables save

IPv4规则信息会保存到 /etc/sysconfig/iptables 文件中,IPv6 规则保存到 /etc/sysconfig/ip6tables 文件中。 必须执行service iptables save 命令才会保存,保存后系统重启后会自动加载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值