iptables 脚本不使用方括号作为策略链

问题描述 投票:0回答:1

我在 iptables.rules 文件中有以下链用于过滤器。而且,我想将它们放入脚本中,这样它就更通用了。

`*filter
:INPUT DROP [2088:4155]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [5:862]
`

并且,将其更改为脚本

`/usr/sbin/iptables -F
 /usr/sbin/iptables -X

/usr/sbin/iptables -P INPUT DROP [2088:4155]
/usr/sbin/iptables -P FORWARD DROP [0:0]
/usr/sbin/iptables -P OUTPUT ACCEPT [5:862]
`

不幸的是,脚本中不接受方括号。在脚本中的策略链中添加方括号的确切语法是什么?

我在脚本中收到的错误:

错误的论点“[2088:4155]” 尝试“iptables -h”或“iptables --help”以获取更多信息。

我本来希望在脚本中设置策略链,但它不起作用。

bash shell sh iptables
1个回答
0
投票

您不应在 iptables 脚本的策略规则中包含像

[2088:4155]
这样的数据包和字节计数。数据包和字节计数包含在保存的 iptables 规则文件中,在使用
-P
建立策略时不需要包含。

# Flush all rules and delete user-defined chains
/usr/sbin/iptables -F
/usr/sbin/iptables -X

# Set default policies for built-in chains
/usr/sbin/iptables -P INPUT DROP
/usr/sbin/iptables -P FORWARD DROP
/usr/sbin/iptables -P OUTPUT ACCEPT
© www.soinside.com 2019 - 2024. All rights reserved.