Мне было интересно, может ли кто-нибудь помочь мне понять / объяснить, что именно делает это правило iptables?
iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Dropped"
iptables -A INPUT -i eth0 -p tcp ! --syn -m state --state NEW -j DROP
Спасибо
Что ж, там есть два правила. Я пройдусь по каждому из них.
Я считаю, что следующее верно:
-A INPUT
Добавьте это правило в цепочку INPUT
-i eth0
Это правило применяется только к пакетам, приходящим через eth0.
-p tcp
Это правило применяется только к трафику TCP
! --syn
Сопоставлять пакеты, для которых не установлен бит SYN.
-m state
Отслеживайте состояние этого соединения.
-state NEW
Это касается только новых подключений.
-m limit
Вызвать ограничитель скорости.
--limit 5/m
Ограничьте количество матчей до 5 в минуту.
--limit-burst 7
Установите максимальное количество начальных согласованных пакетов равным 7.
-j LOG
Запишите эту запись в журнал iptables.
--log-level
Установите уровень детализации журнала на 4.
--log-prefix "Dropped"
Добавьте к сообщению журнала префикс «Отброшено».
-A INPUT
Добавьте это правило в цепочку INPUT
-i eth0
Это правило применяется только к пакетам, приходящим через eth0.
-p tcp
Это правило применяется только к TCP-трафику.
! --syn
Это правило не применяется к пакетам SYN.
-m state
Отслеживайте состояние этого соединения.
--state NEW
Это касается только новых подключений.
-j DROP
DROP пакеты, соответствующие указанным выше условиям.
Регистрируйте плохие пакеты tcp (5 в минуту и 7 пакетов) и отбрасывайте их