--syn
Флаг полезен для проверки TCP трафика, но NEW
состояние может быть использован для других протоколов ( в том числе TCP
) , как UDP
и ICMP
. Я могу сказать, что NEW
это более общий --syn
вариант, чем вариант TCP.
Из руководства по iptables вы можете прочитать:
NEW meaning that the packet has started a new connection,
or otherwise associated with a connection which has not seen packets in both directions
Например, запрос DNS будет соответствовать NEW
состоянию, но он не будет соответствовать правилу с --syn
параметром. Проще говоря, это дейтаграмма UDP.
Кроме того, эта --syn
опция может использоваться для проверки пакетов TCP с неправильной комбинацией флагов для их отбрасывания.
Кроме того, вы можете использовать обе эти опции вместе, чтобы проверить NEW
потоки TCP без --syn
первого пакета и удалить их, например:
$ sudo iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "New not syn:"
Здесь мы добавляем пакеты этого типа в пользовательскую цепочку, которая называется bad_tcp_packets
отбрасываемой / регистрируемой и т. Д.