Sshguard/ru

sshguard — это система предотвращения вторжений, которая разбирает логи сервера, определяет подозрительную активность и затем использует системный межсетевой экран, чтобы блокировать IP-адреса злонамеренных подключений. sshguard написан на C, поэтому он не нагружает систему.

Как это работает
sshguard является простой службой, которая постоянно отслеживает изменения в одном или нескольких файлах логов. Она разбирает события, которые демоны посылают в случае неудавшихся попыток входа в систему, а затем с помощью обновлений правил межсетевого экрана блокирует любые дальнейшие попытки от данных подключений.

Несмотря на название, sshguard разбирает не только логи SSH. Он также поддерживает многие почтовые системы, а также некоторые системы FTP. Полный список поддерживаемых устройств можно найти на сайте программы.

Emerge
Установите :

Также удостоверьтесь, что пакет установлен и используется в качестве системного межсетевого экрана. Во время написания данной статьи, sshguard еще не поддерживал.

Более детальная информация по использованию и настройке IPtable может быть найдена в соответствующей статье.

Подготовка межсетевого экрана
Когда sshguard блокирует какого-либо злонамеренного пользователя (блокируя его IP-адрес), он будет использовать цепочку sshguard.

Подготовьте цепочку и удостоверьтесь, что она вызывается при обнаружении новых входящих соединений:

Просмотр лог-файлов
Основной идеей sshguard является то, что администратор указывает приложению отслеживаемые файлы логов через параметры командной строки. Как такового файла конфигурации для sshguard не существует.

В Gentoo параметры лучше всего определять в файле :

Убедитесь в том, что файлы логов доступны пользователю, от имени которого работает sshguard.

OpenRC
Чтобы sshguard запускался при старте системы, добавьте его в уровень запуска default, после чего запустите его:

Blacklisting hosts
With the blacklisting option after a number of abuses the IP address of the attacker will be blocked permanently. The blacklist will be loaded at each startup and extended with new entries during operation. inserts a new address after it exceeded a threshold of abuses.

Blacklisted addresses are never scheduled to be released (allowed) again.

The  command line option enables blacklisting and requires a filename to use for permanent storage of the blacklist. An optional threshold is configurable within the same argument. This threshold is then first, after which the filename is mentioned separated by.

To enable blacklisting, create an appropriate directory and file:

Add the blacklist file to the configuration and alter the SSHGUARD_OPTS variable:

Restart the daemon to have the changes take effect:

File '/var/log/auth.log' vanished while adding!
При запуске, sshguard показывает следующую ошибку:

Такая ошибка (путь до файл может быть различным) происходит, когда целевой файл не доступен в системе. Убедитесь, что он создан, или измените конфигурацию sshguard так, чтобы не следить за этим файлом.

На системах с OpenRC и syslog-ng, следующего дополнения к может хватить:

Перезагрузите, чтобы изменения вступили в силу:

Смотрите также

 * Iptables, информация по установке и настройке iptables в Gentoo

Ссылки
Документация по sshguard дает всю необходимую информацию для дальнейшей настройки приложения.