воскресенье, 18 марта 2012 г.

Ограничение трафика через iptables

Доп инфо


ipt_limit - общее ограничение по срабатываний правила
     -m limit --limit {avg}/[second|minute|hour|day] --limit-burst {burst}

iplimit - ограничение соединений для одного IP.
    Ограничение коннектов к 80 порту от одного IP:
         iptables -A INPUT -p tcp --syn --dport http -m iplimit --iplimit-above 4 -j REJECT
    Тоже, но для запросов с одной /24 подсети:
         iptables -A INPUT -p tcp --syn --dport http -m iplimit --iplimit-mask 8 --iplimit-above 4 -j REJECT

hashlimit - для каждого IP в хэше хранятся параметры соединений;
    -m hashlimit --hashlimit {avg} --hashlimit-burst {burst} --hashlimit-mode {режим: dstip, dstport, srcip, srcport} \
       --hashlimit-name {name} --hashlimit-htable-max {num} --hashlimit-htable-expire {num} --hashlimit-htable-gcinterval {num}

    iptables -A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m hashlimit --hashlimit 1/hour \
       --hashlimit-burst 2 --hashlimit-mode srcip --hashlimit-name SSH --hashlimit-htable-expire 360000 -j ACCEPT

tbf (http://www.nmalykh.org/work/tbf.tar.gz) - продолжение развития limit и hashlimit c поддержкой
возможности инверсии правил в целом.

    iptables -A INPUT -p tcp -m tcp --dport 22 -m state --state NEW -m tbf ! -- tbf 1/s --tbf-burst
       --tbf-mode srcip --tbf-name SMTP  -j DROP

Комментариев нет:

Отправить комментарий