Начиная с версии 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
Полную информацию, по синтаксису указанных в статье команд, вы найдете в справочнике командного интерфейса в Центре загрузки.
Комментарии
А разбираться с диапазоном возможных значений пользователи должны сами?
А также с вашими всевозможными скобками?
Хотя бы привели пример командной строки чтобы было понятно, что всю вашу кучу скобок всех возможных видов нужно просто стереть.
К какой паре присовокупить вашу последнюю квадратную скобку?
Самое главное, что по умолчанию такая защита включена в интернет-центре (если в течение 3-х минут 5 раз злоумышленник неверно введет учетные данные для входа в интернет-центр, его IP-адрес будет заблокирован на 15 минут).
Обращаю ваше внимание, что защита работает для внешних интерфейсов устройства по протоколам HTTP (TCP/80) и Telnet (TCP/23). Т.е. проверять работу данной функции нужно со стороны WAN-интерфейса (из Интернета).
Как правило, для 99% пользователей, не нужно дополнительно настраивать эту функцию (она работает по умолчанию с оптимальными параметрами). Но если кто-то захочет под свои нужды сделать дополнительные настройки, то в этом случае может воспользоваться приведенными в статье специальными командами.
Например, хотим ужесточить правила по умолчанию (5-15-3). В CLI выполним команду:
ip http lockout-policy 4 60 1
В этом случае для веб-интерфейса будет включена следующая защита, - если кто-то в течение одной минуты выполнит 4 неверные попытки для подключения к веб-конфигуратору интернет-центра, его IP-адрес будет заблокирован на 60 минут.
Почему в журнале Keenetic lite III нет записей о неверном вводе пароля по http, выделенных красным, а только запись черным цветом о бане IP адреса? При использовании telnet все отображается.
В режиме командной строки (CLI) роутера выполните команду ip http log auth для включения записи в системный журнал таких событий.
Подскажите пожалуйста:
- как включить запись в журнал о неудачных попытках авторизации по ssh, telnet
- как получить списков блокированных адресов которые которые получились в результате работы lockout policy
На данный момент в Кинетике можно включить только логирование попыток неудачной авторизации через веб. Создайте, пожалуйста, обращение в техническую поддержку и попросите добавить эту возможность в будущих версиях ПО. Наши инженеры передадут эту информацию разработчикам и возможно эту функцию добавят.
Что касается списка блокированных адресов, то сообщение о блокировках, с указанием IP-адреса, фиксируется только в логах (в системном журнале).
Скажите пожалуйста, а функция защиты от перебора паролей для определенного порта, например RDP 3389 будет ли реализована? Очень важно.
Нет, в планах такой реализации нет.
Блокировать нужно не только по ip, т.к. могут подбирать с разных. Но также по логину по которому хотят войти. Например, если к логину admin 5 неудачных попыток, он блокируется на 15 минут для всех ip.
Войдите в службу, чтобы оставить комментарий.