Назад | Перейти на главную страницу

Подсчитать количество входящих подключений на порт - Linux

У нас есть сервер, который прослушивает порт X. На сервере большое количество клиентов, время от времени процесс зависает, я вижу сообщения о переполнении SYN в журнале. Я пытался настроить соответствующие параметры конфигурации tcp.

Я хотел бы подсчитать количество входящих подключений к этому конкретному порту с помощью tcpdump или другой команды.

Iptables может регистрировать соединения или, если хотите, вы можете использовать --tcp-flags SYN возможность сопоставления пакетов синхронизации.

iptables -A INPUT -p tcp -m tcp --dport <listenPort> \
    -m state --state NEW -j LOG --log-prefix 'PORTMON'

grep 'PORTMON' /var/log/messages

netstat может отображать активные соединения (труба к wc -l по счетам):

netstat -punta | grep <yourPort>

Или просто используйте tcpdump для проверки трафика.

man tcpdump

Вы рассматривали возможность использования решения для мониторинга сети?

Это не просто получение количества подключений к этому порту, это что-то делает, если значение слишком велико: например, установка и правило iptables для запрета IP-адреса или получение предупреждения на ваш мобильный телефон. Как указано в этот вопрос, вы можете использовать плагин IPTraf из Pandora FMS чтобы получить эту метрику, а затем использовать возможности оповещения и отчетности Pandora FMS, чтобы что-то с этим сделать.