Sshguard

Материал из Gentoo Linux Wiki

Перейти к: навигация, поиск
Вернуться в раздел безопасность

Содержание

[править] Введение

sshguard предназначен для предотвращения атаки перебором на SSH сервер. (ssh brute-force preventing)

[править] Описание

sshguard отслеживает активность журнала системы и блокирует адрес атакующего с помощью фаервола. sshguard может обрабатывать журналы различныx форматов:

  • syslog
  • syslog-ng
  • metalog
  • multilog
  • raw

Обладает поддержкой таких функций, как:

  • белые списки адресов
  • ipv6
  • определение имени адреса

[править] Установка

В данный момент в portage находится версия 1.0, которая считается стабильной. Версия 1.1beta3 -development. Т.к. в последней версии есть поддержка metalog, его и установим. Читаем статью Portage_Overlay и берём отсюда [1] нужные нам файлы. Должны получить такую структуру

Code: Список файлов
 /usr/local/portage/app-admin/sshguard/files/sshguard.init
 /usr/local/portage/app-admin/sshguard/files/sshguard.confd
 /usr/local/portage/app-admin/sshguard/sshguard-1.1_beta3.ebuild
Code: Переходим в директорию и создаём манифест файл
cd /usr/local/portage/app-admin/sshguard/
ebuild sshguard-1.1_beta3.ebuild digest
Code: Для x86
echo "app-admin/sshguard ~x86" >> /etc/portage/package.keywords

Устанавливаем emerge sshguard

[править] Настройка

После установки в системе появится инитскрипт /etc/init.d/sshguard , файл конфигурации /etc/conf.d/sshguard. Для использования с metalog

Файл: /etc/conf.d/sshguard для работы с metalog
 #Logfile for sshguard to examine.
 SSHGUARD_LOGFILE="/var/log/sshd/current"

Теперь добавим правила iptables

Code: Правила iptables
iptables -N sshguard
iptables -A INPUT -p tcp --dport 22 -j sshguard
#если нужна поддержка IPv6
ip6tables -N sshguard
ip6tables -A INPUT -p tcp --dport 22 -j sshguard

[править] Запуск

Code: Запуск
/etc/init.d/sshguard start
#или
rc-config start sshguard

После этого можно добавить в стандартный уровень запуска: rc-update add sshguard default

[править] Пример работы программы

Для примера, вывод программы запущенной вручную в терминале.

Started successfully [(a,p,s)=(4, 420, 1200)], now ready to scan.
Matched IP address 64.105.218.165
Matched IP address 64.105.218.165
Matched IP address 64.105.218.165
Matched IP address 64.105.218.165
Blocking 64.105.218.165: 4 failures over 9 seconds.
Setting environment: SSHG_ADDR=64.105.218.165;SSHG_ADDRKIND=4;SSHG_SERVICE=10.
Run command "case $SSHG_ADDRKIND in 4) exec /sbin/iptables -A sshguard -s $SSHG_ADDR -j DROP ;; 6) exec /sbin/ip6tables -A  sshguard -s $SSHG_ADDR -j DROP ;; *) exit -2 ;; esac": exited 0.
Releasing 64.105.218.165 after 542 seconds.
Setting environment: SSHG_ADDR=64.105.218.165;SSHG_ADDRKIND=4;SSHG_SERVICE=10.
Run command "case $SSHG_ADDRKIND in 4) exec /sbin/iptables -D sshguard -s $SSHG_ADDR -j DROP ;; 6) exec /sbin/ip6tables -D  sshguard -s $SSHG_ADDR -j DROP ;; *) exit -2 ;; esac": exited 0.

[править] Ссылки

Страница проекта

Источник — «http://ru.gentoo-wiki.com/Sshguard»
Личные инструменты