Компонент netfilter, обеспечивающий отслеживание состояния соединения и классификацию пакетов по принадлежности к соединениям, что обеспечивает stateful-фильтрацию.
Классифицирует каждый пакет либо как открывающий новое соединение, либо относящийся к уже установленному. При этом, понятие «состояние соединения» искусственно вводится даже для протоколов не использующих его (UDP, ICMP).
Отслеживание связанных соединений, ICMP-ответы на TCP и UDP, FTP сессии с несколькими соединениями и т.д.
Механизм анализирует все пакеты, кроме помеченных NOTRACK в таблице raw, функция удобна например во время DDoS-атаки, что бы не тратить ресурсы на отслеживание с этих хостов.
Критерий conntrack позволяет классифицировать пакеты на основании их отношения к соединениям.
Возможные состояния (–ctstate):
Возможные состояния (–ctstatus):
conntrack пришел на замену старому критерию state (использование его уже не рекомендуется).
Позволяет классифицировать соединение в целом на основании одного пакета. Маркировку автоматически приобретают все пакеты в данном соединении и связанными с ним.
Критерий connbytes позволяет контролировать кол-во байт или пакетов, переданных по каждому конкретному соединению (возможность квот или приоритетов загрузки).
Критерий connlimit позволяет ограничивать число одновременно открытых TCP-соединений с каждого хоста или подсети.
Часть функционала содержится в модулях, некоторые из них нужно включать вручную, например nf_conntrack_ftp, модуль для распознавания связанных ftp соединений.
Просмотреть список модулей в системе:
# lsmod
Включить модуль nf_conntrack_ftp:
# modprobe nf_conntrack_ftp
Комплект conntrack-tools содержит две утилиты: