在 CentOS 7 的 shell 中,可以这样定义变量 whiteListIp:
whiteListIp="192.168.1.100 192.168.1.101 192.168.1.102"
然后批量使用 iptables 放行 INPUT 链,并且如果已经存在放行规则,则无需重复添加,可以使用如下脚本:
for ip in $whiteListIp; do
iptables -C INPUT -s $ip -j ACCEPT || iptables -A INPUT -s $ip -j ACCEPT
done
上面的脚本首先使用 for 循环遍历 whiteListIp 变量中的所有 IP,对于每个 IP,使用 iptables -C INPUT -s $ip -j ACCEPT 命令来检查是否已经存在放行规则。如果已经存在,则返回 0;如果不存在,则返回非 0。然后使用 || 操作符来判断上一个命令的返回值,如果返回非 0,则使用 iptables -A INPUT -s $ip -j ACCEPT 命令添加新的放行规则。