在 Amazon Linux 2 上保存 iptables 防火墙规则

Ric*_*ner 5 iptables amazon-ec2 amazon-web-services amazon-linux-2

我在 AWS 的 EC2 实例上运行 Amazon Linux 2。我希望能够添加我自己的 iptables 规则,并让它们在重启后继续存在。

什么是正确的方式(或者一个正确的方法)来做到这一点?

Ric*_*ner 8

执行此操作的一种简单方法(在撰写本文时有效,AMI 映像的时间戳为 2020-05-20)是启用该iptables服务。这允许将规则保存到系统配置中,并在每次实例启动时应用。

首先,安装服务并激活它:

yum install iptables-services -y
systemctl enable iptables
systemctl start iptables
Run Code Online (Sandbox Code Playgroud)

其次,添加您喜欢的任何 iptables 规则。

例如:

# Enable NAT forwarding
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Run Code Online (Sandbox Code Playgroud)

然后,每当您更改 iptables 规则时:

service iptables save
Run Code Online (Sandbox Code Playgroud)

当前应用的规则集保存到/etc/sysconfig/iptables,并在每次启动时恢复。

  • 如果忘记安装“iptables-services”,最后一个命令会给出一个相当令人困惑的“服务命令仅支持基本的 LSB 操作...请尝试使用 systemctl”。 (3认同)