如何在 Amazon EC2 VPC NAT Ami 上保留 iptables 配置?

如何在 Amazon EC2 VPC NAT Ami 上保留 iptables 配置?

我有一个像这样的小脚本来配置 iptables:

#!/bin/bash

PRE_STR="iptables -t nat -A PREROUTING -p tcp -j DNAT"
FOR_STR="iptables -A FORWARD -p tcp -j ACCEPT"


#####################################
# instances
CM="10.0.1.137"
MASTER="10.0.1.149"
MYSQL="10.0.1.83"
REPORTING="10.0.1.85"

#####################################
# Clear Iptables
iptables -F
iptables -t nat -F

#####################################
# Forward to enable Internet on private nodes
iptables -t nat -A POSTROUTING -j MASQUERADE


#####################################
# Port forwarding

forward()
{
        $PRE_STR --dport $1 --to $2:$3
        $FOR_STR --dport $3 -d $2
}

#what   from    to ip           to port
forward 3222    $CM             22
forward 7183    $CM             7183
forward 7180    $CM             7180

forward 3122    $MASTER         22
forward 8888    $MASTER         8888
forward 11000   $MASTER         11000

forward 2122    $MYSQL          22
forward 13306   $MYSQL          3306

iptables-save > /etc/firewall.conf

问题是,如何/etc/firwall.conf在下次启动时加载当前的 iptables 设置?

在普通的 Debian 机器上,我会将一个脚本放入iptables-restore < /etc/firewall.conf文件夹中/etc/network/if-up.d/iptables。但这张图片中没有此功能。

那么加载它的正确原因是什么/etc/firewall.conf

AMI ID:ami-1de2d969

更新:

iptables-restore < /etc/firewall.conf里面发射可以吗/etc/rc.local

来源:http://www.cyberciti.biz/faq/how-do-i-save-iptables-rules-or-settings/

答案1

Debian(及其衍生产品)使用该iptables-persistent包执行此任务。

/etc/iptables/rules.4在和/或中定义您的规则/etc/iptables/rules.6并激活服务(使用update-rc.dchkconfig您选择的工具)。

在 RHEL 及其衍生版本中,启动脚本/etc/init.d/iptables/etc/sysconfig/iptables,因此您需要在那里定义规则,并确保服务iptables已激活 ( chkconfig iptables on) 并启动 ( service iptables start)。

答案2

service iptables save

或者

/etc/init.d/iptables save

相关内容