Ubuntu 路由器设置指南 iptables 规则

Ubuntu 路由器设置指南 iptables 规则

iptables我正在尝试弄清楚Ubuntu 路由器设置官方指南。例如,*nat。我在互联网上找不到任何有 的*nat地方iptables

*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT

答案1

我认为它是表名称的选择器。*用于代替-t命令的命令行变体的选项,使用 选择表。例如,通常通过指定 来选择表-t <tablename>,因此在本例中-t nat,选择纳特桌子:

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

您提供的示例是使用来自这里的文件注意,不要使用命令行选项(iptables-restore),而是使用单独的行,如下所示:<<EOF ... EOF-t

iptables-restore <<-EOF
*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
EOF

有人可能会说,既然-A还在这份文档中,那为什么-t不呢?我不知道答案,希望有人知道。

同样,在*nat表格编辑完成后COMMIT,然后*filter选择表格,对其进行处理,然后COMMIT进行编辑。

iptables-restore <<-EOF
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT 
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT
EOF

如果你正在寻找教程,你可能会发现这个NAT——网络地址转换教程很有用。

相关内容