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

Как узнать, какие соединения заблокировал мой сервер debian?

Короче говоря, я на самом деле ищу файлы журнала, чтобы увидеть, что любое входящее соединение блокируется на сервере debian lenny.

Или каким-либо другим способом узнать? Я использую iptables

По умолчанию отброшенные пакеты не регистрируются. Если вы его включите, это может вызвать огромный объем трафика, а системный журнал по умолчанию будет записывать сообщения на диск в наиболее «безопасном» режиме, что вызывает тяжелую загрузку дискового ввода-вывода. Так что будьте осторожны, чтобы это не привести к затоплению вашего сервера.

Чтобы включить регистрацию отброшенных или отклоненных пакетов, я бы рекомендовал добавить правило LOG перед правилом DROP / REJECT, примерно так:

-A FORWARD -m limit --limit 4/sec --limit-burst 20 -j LOG --log-prefix "Dropping  (FORWARD): " 
-A FORWARD -j DROP 

При этом используется модуль «limit», позволяющий регистрировать до 20 пакетов, прежде чем он начнет ограничивать их не более чем 4 в секунду. Это позволит получить еще 20 пакетов, если ограничение в 4 секунды не будет достигнуто какое-то время.

Также есть модуль «hashlimit», который может быть доступен в вашей системе, который позволяет вам иметь уникальное ограничение на удаленный или локальный IP-адрес. См. "Man iptables" для получения дополнительной информации о hashlimit.

Наконец, вы, вероятно, захотите записывать сообщения журнала в место назначения, где вы отключили fsync. В старых системах это делалось путем добавления знака «-» в начало имени файла в /etc/syslog.conf. Я не вижу аналогичной опции для rsyslog, поэтому просто имейте в виду, и если вы видите, что ввод-вывод диска проходит через крышу, когда вы регистрируете много пакетов, вам может потребоваться добавить более строгие ограничения или изучить изменение конфигурации rsyslog .

Вам нужно будет добавить правило в конце ваших цепочек, чтобы отправить пакет в LOG цель, прежде чем позволить ей работать по умолчанию DENY политика.