заблокировать ssh с помощью iptables

Самым простым решением будет изменить стандартный порт SSH с 22 на другой.  Для этого в файле конфигурации sshd (обычно /etc/ssh/sshd_config) нужно прописать Port номер_порта. К тому же, это может быть полезно, если вы захотите попасть на свой компьютер через какого-то странного провайдера или “злого” админа на работе блокирующего “левые” порты. Например, ssh можно повесить на 80-ый порт..

Как заблокировать перебор пароляiptables -A INPUT -i eth0 -p tcp —dport 22 -m state —state NEW -m recent —set —name SSH;iptables -A INPUT -i eth0 -p tcp —dport 22 -m state —state NEW -m recent —update —seconds 60 —hitcount 8 —rttl —name SSH -j DROP

-i eth0 — это сетевой интерфейс.

Возможно, вам нужно будет изменить:
–dport22 на номер порта где крутится ваш SSH демон;
–seconds 60 — это период, в течении которого будут считаться подключения;
–hitcount 8 — это количество попыток;

Таким образом этими правилами мы установили ограничение: не более 8 подключений по SSH в минуту.

Восстановление после перезагрузки
Что бы правила восстанавливались после перезагрузки нужно выполнять их после запуска сети. Простым и элегантным решением будет делать это автоматически.
Для этого создайте /etc/network/if-up.d/bfa-protection:

#!/bin/bash
[ «${METHOD}» != loopback ] exit 0
/sbin/iptables -A INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –set –name SSH
/sbin/iptables -A INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –update –seconds 60 –hitcount 8 –rttl –name SSH -j
DROP

Разумеется, не забудьте изменить параметры, если это необходимо.

Сохранив этот файл сделайте его исполняемым:
chmod u x /etc/network/if-up.d/bfa_protection

Теперь каждый раз когда интерфейс будет активирован — правила будут установлены.

Удаление правил при отключении интерфейса
/etc/network/if-down.d/bfa_protection :

#!/bin/bash
[ «${METHOD}» != loopback ] exit 0
/sbin/iptables -D INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –set –name SSH
/sbin/iptables -D INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –update –seconds 60 –hitcount 8 –rttl –name SSH -j DROP

и делаем исполняемым —  chmod u x /etc/network/if-down.d/bfa_protection

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.