[Linux-Biella] iptables...
Mattia Rossi
mattia a technologist.com
Ven 23 Mar 2007 12:19:18 CET
On Fri, 23 Mar 2007 11:59:39 +0100
leonardo "LeOS" buffa <leos a bilug.linux.it> wrote:
> On Fri, 23 Mar 2007 11:58:17 +0100
> Cristiano Deana <cris a deana.it> wrote:
>
> > Ma non esiste con in altri firewall la possibilita' di usare delle
> > "tables" che puoi gestire "a caldo" inserento o togliendo ip?
> > a quel punto autorizzi ad uscire quella table e via.
>
> infatti io amo proprio quello di pf dove posso flushare la table e
> ricaricare il ruleset leggendo il contenuto da file...
>
>
Esiste, esiste, solo che Leo sta usando una ferrari solo con la prima
ridotta ....
Ti devi creare una custom table
$IPTABLES -N HOST_BLOCK
a cui mandi i pacchetti in testa alle regole del tuo script:
$IPTABLES -A INPUT -j HOST_BLOCK
$IPTABLES -A FORWARD -j HOST_BLOCK
$IPTABLES -A OUTPUT -j HOST_BLOCK
dentro la quale carichi gli ip che vuoi bloccare:
if [ -e "$BLOCK_HOSTS_FILE" ]; then
echo "(Re)loading list of BLOCKED hosts (blackhole) from
$BLOCK_HOSTS_FILE."
while read host
do
chk_comment=`echo "$host" |cut -c1`
if [ "$chk_comment" != "#" ] && [ "$host" != "" ]; then
# Filter out comment fields starting with '#'
if [ "$BLOCKED_HOST_LOG"== "1" ]; then
$IPTABLES -A HOST_BLOCK -s $host -m limit --limit 3/m
--limit-burst 5 -j LOG --log-level $LOGLEVEL --log-prefix "Blocked
hosts violation: "
fi
$IPTABLES -A HOST_BLOCK -s $host -j DROP
fi
done < $BLOCK_HOSTS_FILE
else
if [ "$1" == "breread" ]; then
echo -e "\033[40m\033[1;31mERROR: Cannot reread the blocked hosts
file \"$BLOCK_HOSTS_FILE\" because it doesn't exist.\033[0m" exit 6
fi
fi
e quando devi modificare/aggiungere/togliere degli host fai il flush
solo della table in questione e poi ricarichi con lo script di cui
sopra ...
Naturalmente non e' farina del mio sacco, ma e' scopiazzato liberamente
da questo script:
http://rocky.eld.leidenuniv.nl/page/iptables/download.htm
Mattia
--
---MR.-
Maggiori informazioni sulla lista
Linux