我有一個解析varnishncsa日誌文件的腳本。該腳本的目的是,如果有人訪問服務器上的某個URL,它會將它們的IP地址添加到iptables中以將其鎖定。bash - 添加額外的IF語句
在我的腳本中,我有一個聲明忽略了我的靜態辦公室IP地址(這樣我就不會將自己鎖定在服務器之外)。
我想添加更多的IP地址,以排除他們被鎖定,但是當我這樣做,似乎打破腳本。
#!/bin/bash
for address in `cat /var/log/brute.txt | grep -v -f /var/log/applied_brute.txt`; do
/bin/echo $address >> /var/log/applied_brute.txt
if [ "$address" != "my.of.fi.ce.ip" ]; then
IPTABLE=`echo $address | awk '{ print "/sbin/iptables -A INPUT -s "$0" -j DROP -m state --state NEW,ESTABLISHED,RELATED\n"}'`
fi
echo $IPTABLE
$IPTABLE
done
unset address
unset IPTABLE
我想是什麼地方的聲明
if [ "$address" != "my.of.fi.ce.ip" ]; then
到幾個IP地址添加到它。
謝謝,這正是我一直在尋找的 – rezizter
請注意答案的細微變化,我忘記了一些選擇 – anishsane
對不起,我現在注意到,Basile的答案也使用了相同的方法。 – anishsane