Начиная с версии KeeneticOS 2.08 была улучшена защита интернет-центра от роботов, перебирающих пароли (защита от брутфорса, англ. brute force). Защита работает для внешних интерфейсов устройства по протоколам HTTP (TCP/80) и Telnet (TCP/23). Чуть позже была добавлена защита для протокола HTTPS (TCP/443).
По умолчанию данная защита включена в интернет-центре. В случае, если кто-то в течение 3-х минут 5 раз неверно введет учетные данные для входа в интернет-центр, его IP-адрес будет заблокирован на 15 минут.
Внешне это выглядит следующим образом:
1. Злоумышленник обращается к веб-интерфейсу интернет-центра.
2. Вводит неверные логин и пароль. После срабатывания защиты веб-интерфейс интернет-центра перестает отвечать на запросы с IP-адреса, с которого выполнялись попытки доступа.
3. В системном журнале интернет-центра появляются соответствующие записи вида:
Июн 26 14:30:39 ndm
Core::Scgi::Auth: authentication failed for user admin.
Июн 26 14:30:43 ndm
Core::Scgi::Auth: authentication failed for user test.
Июн 26 14:30:47 ndm
Core::Scgi::Auth: authentication failed for user user1.
Июн 26 14:30:51 ndm
Core::Scgi::Auth: authentication failed for user admin.
Июн 26 14:30:52 ndm
Netfilter::Util::Conntrack: flushed 7 IPv4 connections for 109.252.x.x.
Июн 26 14:30:52 ndm
Netfilter::Util::BfdManager: "Http": ban remote host 109.252.x.x for 15 minutes.
Июн 26 14:45:52 ndm
Netfilter::Util::BfdManager: "Http": unban remote host 109.252.x.x.
Управлять данной функцией можно через интерфейс командной строки (CLI) интернет-центра. Синтаксис команд следующий:
ip http lockout-policy {threshold} [{duration} [{observation-window}}]]
ip telnet lockout-policy {threshold} [{duration} [{observation-window}}]]
где
threshold — количество попыток ввести неверный пароль, возможные значения от 4 до 20 попыток (по умолчанию 5);
duration — время в минутах, на которое блокируется IP-адрес злоумышленника, возможные значения от 1 до 60 минут (по умолчанию 15 минут);
observation-window — период времени в минутах, за который должны произойти неверные попытки, после чего счетчик сбрасывается, возможные значения от 1 до 10 минут (по умолчанию 3 минуты).
В старых версиях KeeneticOS для протокола HTTP по умолчанию выключена возможность логирования попыток неудачной авторизации в системе. Включить её можно специальной командой. После этого в системном журнале будут фиксироваться события о неудачных попытках подключения к веб-интерфейсу роутера про протоколу HTTP. В интерфейсе командной строки (CLI) интернет-центра выполните команды:
ip http log auth
system configuration save
TIP: Примечание
1. Функция защиты от перебора паролей не работает через службу KeenDNS в режиме "Через облако". Как правило, роботы сканируют только IP-адреса и поэтому такая защита не столь актуальна при работе через интернет-облако.
2. Начиная с версии KeeneticOS 2.12 появилась возможность задать параметры отслеживания попыток вторжения путем перебора паролей SSH и FTP-сервера для публичных интерфейсов (по умолчанию функция включена). Для этого соответственно используются команды:
ip ssh lockout-policy
ip ftp lockout-policy
3. Начиная с версии KeeneticOS 3.1 добавлена возможность задать параметры отслеживания попыток вторжения путем перебора паролей VPN-сервера PPTP (по умолчанию функция включена). Для настройки используется команда:
vpn-server lockout-policy
Полную информацию, по синтаксису указанных в статье команд, вы найдете в справочнике командного интерфейса в Центре загрузки.