如何使用bash将充满IP块的文件批量添加到IPTables

Mat*_*att 6 bash iptables

如何使用BASH(或其他脚本语言)将充满IP块的文本文件批量添加到IPTables?或者是否有其他阻止这些地址范围的方法?

编辑:换句话说有没有办法编程迭代文件并构建相关的条目?

Jos*_*ill 11

你能在iptables配置脚本​​中创建一个循环吗?就像是

#!/bin/bash
for x in $(cat ip_list.txt)
do
    iptables -A INPUT -s $x -j DROP
done
Run Code Online (Sandbox Code Playgroud)

您的ip_list.txt文件只是看起来像

1.1.1.1
2.2.2.2
3.3.3.3
etc
Run Code Online (Sandbox Code Playgroud)


JuZ*_*Zer 5

您可以解析 ip list 并检查 IP 地址是否已被阻止:

#!/bin/bash

for i in $(cat iptables.log)
do
    /sbin/iptables -L -n -v | grep -q "${i}"
    RETVAL=$?
    if [ $RETVAL -ne 0 ]; then
     /sbin/iptables -A INPUT -s "${i}" -j DROP
    fi
done
Run Code Online (Sandbox Code Playgroud)