Флаги TCP iptables

Флаги TCP iptables

Я новичок в iptables и работе с сетями, поэтому извините меня за такие начальные вопросы.

Я нашел в Интернете часть фильтрации некорректных пакетов:

/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL SYN -m state --state NEW -j RETURN

Но насколько я знаю, первый (новый) пакет должен содержать флаг SYN и это правило будет запрещать новые соединения? Или я не так понимаю?

А что произойдет после применения следующих правил?

/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL RST,ACK,PSH
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL RST,ACK,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL RST,ACK,PSH,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL FIN,PSH,ACK,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL ACK,URG
/usr/bin/sudo /sbin/iptables -A tcpchk -p tcp --tcp-flags ALL ACK,URG,FIN

Если я прав, то никаких действий не требуется? iptables проверит указанные выше флаги и просто перейдет к следующим правилам, верно?

решение1

Во втором примере нет никаких действий, поэтому он не делает ничего, кроме сбора статистики.

iptables -xvn -L tcpchk

ALL SYN соответствует установленным соединениям и выбрасывает установленное соединение из цепочки tcpchk и возвращает его в родительскую цепочку, предположительно INPUT.-j ВОЗВРАТвернуть пакет родительскому объекту.

Правило не вызовет сбоев, поскольку на самом деле ничего не отбрасывает и не отклоняет.

Связанный контент