Может ли очень большой файл /etc/hosts.deny замедлять SSH-соединения?

12

Я использовал denyhosts некоторое время, и я заметил, что мой /etc/hosts.denyстановится довольно большим. Denyhosts добавляет IP-адреса /etc/hosts.deny, а мой denyhosts настроен так, чтобы никогда не удалять IP-адреса.

$ wc -l /etc/hosts.deny
22149 /etc/hosts.deny

Может ли это стать проблемой? Я не очень понимаю, как работает libwrap. Надеюсь, это хэширование этих записей или что-то для быстрого доступа, но я не смотрел на этот код.

У меня возникают некоторые странные проблемы с сетью, когда мои SSH-соединения с сервером gitosis зависают (на самом деле, используются обновления пакетов Symfony2 bin/vendors install). Я не совсем уверен, как его отладить, поэтому я ищу вещи, которые могут пойти не так с коробкой, такие как нехватка ресурсов.

Это на сервере Ubuntu 10.04.4 LTS.

Адам Монсен
источник
Libwrap вообще не хэширует. Он анализирует файл при каждом вызове, к сожалению для вас.
Дэвид Шварц
У denyhosts есть опции для очистки записей с течением времени. Я обычно нахожу, что через месяц или два, данный хост обычно не пытается вернуться.
Zoredache

Ответы:

14

Да.

Но это не должно быть большим замедлением, если у вас нет имен вместо IP-адресов, если у вас установлена опция PARANOID или включена идентичность (запрашивая информацию об имени пользователя). И это только замедлит первоначальное соединение, ни на что не повлияет, как только соединение будет установлено и передаст данные.

Вы можете попробовать time tcpdmatch sshd 1.2.3.4и time tcpdmatch sshd foo.example.comс последним элементом установить имя хоста или IP-адрес системы, с которой вы инициируете соединения. Это должно воспроизвести большинство проблем синхронизации sshd, обрабатывающих файл /etc/hosts.deny, и показать, сколько времени это займет.

Freiheit
источник