TGViewer
Linux Ready | DevOps Linux Ready | DevOps @linux_ready · 11.2K subscribers
Post #1588 1.12K
Проверяем состояние соединений через conntrack!

Linux firewall работает не только с отдельными пакетами. Подсистема Netfilter connection tracking ведёт таблицу отслеживаемых соединений, в которой хранится состояние TCP, UDP и других потоков. Это полезно при диагностике NAT, firewall и асимметричной маршрутизации.

Установим утилиту для работы с таблицей conntrack:
sudo apt update && sudo apt install conntrack -y


Текущие соединения можно вывести через -L и сразу отфильтровать по протоколу и адресу назначения:
sudo conntrack -L -p tcp --dst 203.0.113.10


(адреса в примерах документационные — при повторении замените их на свои)

Для TCP-запись содержит состояние соединения, а также параметры исходного и обратного направлений. На узле, выполняющем NAT, по различиям между ними можно определить преобразование адресов и портов:
tcp  6 431999 ESTABLISHED
src=10.0.0.20 dst=203.0.113.10 sport=52144 dport=443
src=203.0.113.10 dst=198.51.100.5 sport=443 dport=52144


При диагностике удобнее наблюдать события в реальном времени. conntrack может выводить создание, обновление и удаление записей по мере прохождения трафика:
sudo conntrack -E -p tcp


Фильтр можно ограничить адресом и портом назначения:
sudo conntrack -E -p tcp \
--dst 203.0.113.10 \
--dport 443


Состояние таблицы важно контролировать на загруженных шлюзах:
sysctl net.netfilter.nf_conntrack_count
sysctl net.netfilter.nf_conntrack_max


Если nf_conntrack_count приближается к nf_conntrack_max, таблица близка к заполнению. При переполнении новые соединения могут перестать нормально отслеживаться, а в журнале ядра обычно появляются сообщения conntrack:
journalctl -k -g 'nf_conntrack'


Время хранения записи для установленного TCP-соединения можно проверить отдельно:
sysctl net.netfilter.nf_conntrack_tcp_timeout_established


Удалять записи вручную следует только при понимании последствий. Для удаления конкретного TCP-потока укажем параметры его исходного направления:
sudo conntrack -D -p tcp \
--src 10.0.0.20 \
--dst 203.0.113.10 \
--sport 52144 \
--dport 443


🔥 conntrack позволяет увидеть состояние соединения с точки зрения Netfilter, включая оба направления потока и результат NAT. Это полезный уровень диагностики между tcpdump и анализом правил nftables.

🚪 Linux Ready | #практика
  • ❤ 14
  • 🔥 7
  • 👍 5
More from @linux_ready
  1. Oct 2, 2026В Linux можно копировать собранные файлы так, чтобы не менять файл назначения, если новая…
  2. Oct 2, 2026🎓 Как гарантированно войти в сферу кибербезопасности с официальным дипломом? Самостоятель…
  3. Oct 2, 2026👩‍💻 SSH: подключение, ключи, туннели и Jump Host! В этом посте собраны основные команды…
  4. Oct 1, 2026🔄 Безопасный арсенал практических инструкций, курсов и инструментов 👩‍💻 Linux & Bash 🤔…
  5. Oct 1, 2026👩‍💻 Подключаем удалённый каталог как обычную папку через SSHFS! Если файлы находятся на…
  6. Sep 30, 2026Восстанавливаем удалённый файл через /proc, пока процесс держит его открытым! rm удаляет и…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →