Ubuntu: Защита SSH сервера от брутфорс атак

Вот несколько правил, придерживаясь которых вы сможете повысить Защиту SSH сервера от брутфорс атак:

  1. Измените стандартный порт sshd, на другой, не стандартный
  2. Установите knockd, для реализации системы port-knocking
  3. Не используйте пароли, а используйте вместо них SSH ключи
  4. Используйте в правилах IPTables recent and hashlimit matches для ограничения количества последовательных попыток подключения

Сейчас рассмотрим последний, четвертый случай, а именно использование правил IPTables.

Использование правил IPTables, для защиты от брутфорс атак:

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j LOG --log-prefix "SSH_brute_force "
iptables -A INPUT -p tcp --dport 22 -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP

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

Для того, чтоб избежать блокировки легитимных пользователей, следует применять белые списки. Для этого нужно создать пользовательскую цепочку SSH_WHITELIST:

iptables -N SSH_WHITELIST

После чего добавить правила с адресами доверенных хостов в эту цепочку:

iptables -A SSH_WHITELIST -s $TRUSTED_HOST -m recent --remove --name SSH -j ACCEPT

Окончательно правила IPTables выглядят так:

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set --name SSH
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j SSH_WHITELIST
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j ULOG --ulog-prefix SSH_brute_force
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 --rttl --name SSH -j DROP

 

 


 

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

Filtered HTML

  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешённые HTML-теги: <a> <s> <u> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <hr> <dd> <sub> <sup>
  • Строки и параграфы переносятся автоматически.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Строки и параграфы переносятся автоматически.
CAPTCHA
Защита от СПАМ ботов. Подтвердите, пожалуйста, что вы человек.
6 + 6 =
Решите эту простую математическую задачу и введите результат. Например, для 1+3, введите 4.