vampirodolce1
18-12-2006, 15:27
Con l'opzione -m limit e' possibile limitare il traffico, ad esempio in entrata per evitare bombardamenti di pacchetti. Ho notato pero' che per essere efficaci, all'indicazione del limite ne va data una successiva per il drop:
iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
(accetta un pacchetto SYN al secondo, per l'inizio del TCP handshake)
Questa regola pero' non ha alcuna efficacia se non si aggiunge la seguente:
iptables -A INPUT -p tcp --syn -j DROP
Come mai? La stessa cosa vale per il ping, ieri ho fatto un po' di prove e se al comando:
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
non si aggiunge anche questo:
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
il blocco sui ping non funziona. Non ho nessun problema ad aggiungere la seconda istruzione, ma mi sembra che la prima gia' contempli un determinato input-rate (un pacchetto al secondo) o sbaglio?
iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
(accetta un pacchetto SYN al secondo, per l'inizio del TCP handshake)
Questa regola pero' non ha alcuna efficacia se non si aggiunge la seguente:
iptables -A INPUT -p tcp --syn -j DROP
Come mai? La stessa cosa vale per il ping, ieri ho fatto un po' di prove e se al comando:
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
non si aggiunge anche questo:
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
il blocco sui ping non funziona. Non ho nessun problema ad aggiungere la seconda istruzione, ma mi sembra che la prima gia' contempli un determinato input-rate (un pacchetto al secondo) o sbaglio?