Как установить и настроить SSHGuard на Debian / Ubuntu |

Как установить и настроить SSHGuard на Debian / Ubuntu

Мануал

Вовзращаясь к  предыдущему посту о защите ssh от брутфорса , хочу рассмотреть установку и настройку такого приложения как SSHGuard.

Программа сканирую записи логов на предмет наличия постоянного перебора паролей.

Итак, перейдем к настройке и установке на Debian и Ubuntu.

Debian

1. Выполним установку пакета:

# apt-get -y install sshguard

Установка займет несколько минут, в зависимости от скорости соединения.

установка sshguard на Debian

2. Произведем настройки Iptables для работы программы.

Зададим разрешающие правила доступа к серверу на порты 22, 53 , 80 , 443:

# iptables -N sshguard
# iptables -A INPUT -j sshguard
# iptables -P INPUT ACCEPT
# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# iptables -A INPUT -p udp --dport 53 -j ACCEPT
# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# iptables -A INPUT -p tcp --dport 443 -j ACCEPT

3. Сохраним изменения с помощью команды :

# iptables-save

4. Для того, чтобы заданные правила приводились в действие после перезагрузки, отредактируем файл /etc/network/if-up.d/00-iptables

# nano -w /etc/network/if-up.d/00-iptables

5. Добавим в него строки следующего содержания:

#!/bin/sh
iptables-restore < /etc/firewall.conf

6. Предоставим скрипту права на выполнение:

# chmod +x /etc/network/if-up.d/00-iptables

7. Отправим цепочку правил в фаервол:

# iptables-save >/etc/firewall.conf

8. Теперь дадим права sshguard на запись правил iptables:

# chmod +s /usr/sbin/sshguard
# iptables-save > /etc/init.d/iptables
# /usr/sbin/sshguard -l /var/log/messages

Ubuntu

Установка SSHGuard на Ubuntu выполняется следующим образом:

1. Выполним апдейт системы и установим пакет

# apt-get update
# apt-get install sshguard
установка sshguard на Ubuntu
2. Установим утилиту для анализа логов
# apt-get autoremove rsyslog
# apt-get install syslog-ng

3. Добавим цепочку правил iptables

 # iptables -A INPUT -j sshguard
 # iptables -P INPUT ACCEPT
 # iptables -A INPUT -p tcp --dport 22 -j ACCEPT
 # iptables -A INPUT -p udp --dport 53 -j ACCEPT
 # iptables -A INPUT -p tcp --dport 80 -j ACCEPT
 # iptables -A INPUT -p tcp --dport 443 -j ACCEPT
 # iptables-save -c

4. Отредактируем конфигурационный файл установленной утилиты:

nano /etc/syslog-ng/syslog-ng.conf

Добавим в него следующее содержаение:


[ ... ]

# pass only entries with auth+authpriv facilities from programs other than sshguard
filter f_sshguard { facility(auth, authpriv) and not program("sshguard"); };
# pass entries built with this format
destination sshguard {
    program("/usr/sbin/sshguard"
        template("$DATE $FULLHOST $MSGHDR$MESSAGE\n")
    );
};
log { source(src); filter(f_sshguard); destination(sshguard); };

[ ... ]


Сохраним измения [ ctrl + o ] и выполним команду:

# killall -HUP syslog-ng

5. Для того, чтобы заданные правила приводились в действие после перезагрузки, отредактируем файл /etc/network/if-up.d/00-iptables:

# nano -w /etc/network/if-up.d/00-iptables

Добавим следующие строки:

#!/bin/sh
iptables-restore < /etc/firewall.conf

Дадим права на выолнение скрипта:

# chmod +x /etc/network/if-up.d/00-iptables

6. Отправим цепочку правил в фаервол:

# iptables-save >/etc/firewall.conf

7. Выполним запуск утилиты:

# /etc/init.d/sshguard start

 

После настроек какждые четыре попытки перебрать пороль будет приводить к записи в черный список.

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий