MikroTik настройка Firewall: Правильная настройка безопасности роутера

Содержание

В роутерах MikroTik настройка firewall имеет много тонкостей и нюансов. Из этой статьи мы узнаем, как правильно настроить firewall на MikroTik. Научимся защищать роутер от перебора паролей, сканирования портов, DDoS и других видов атак.

Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор – официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.

Разберем примеры того, как нельзя настраивать брандмауэр и какие ошибки допускают системные администраторы при конфигурировании безопасности роутера.

А также расскажу, что не умеет firewall MikroTik, поговорим о видах правил, почему важен порядок их расположения и способах организации файрвола.

Схема прохождения трафика MikroTik

Схема прохождения пакетов нужна для понимания того, как движется трафик внутри маршрутизатора, через какие логические блоки он проходит. Написание сложных конфигураций возможно только при понимании данной схемы.

  • INPUT INTERFACE – входная точка. С нее пакеты начинают маршрут. Интерфейс может быть физическим или виртуальным;
  • OUTPUT INTERFACE – выходная точка, где пакеты заканчивают маршрут. Интерфейс может быть физическим или виртуальным;
  • Local Process IN – финальная точка пути пакетов, адресованных маршрутизатору;
  • Local Process OUT – начальная точка пакетов, что сгенерировал маршрутизатор;
  • Routing Decision – решение о маршрутизации.

Трафик должен принадлежать определенной цепочке, которые бывают:

  • Input – трафик, направленный к маршрутизатору;
  • Output – трафик, исходящий из маршрутизатора;
  • Forward – трафик, проходящий через маршрутизатор;
  • Prerouting – трафик уже вошел в порт, но еще не принято решение о маршрутизации;
  • Postrouting – последний этап перед достижением выходного порта.

Описание содержимого цепочек:

  • HOTSPOT-IN и HOTSPOT-OUT относятся к возможностям Hotspot.
  • RAW PREROUTING и RAW OUTPUT – это частный случай файрвола, который служит для снижения нагрузки на ЦП во время DOS-атак.
  • CONNECTION TRACKING – отслеживание соединений.
  • MANGLE PREROUTING, MANGLE INPUT, MANGLE FORWARD, MANGLE OUTPUT и MANGLE POSTROUTING служат для маркировки трафика.
  • DST-NAT и SRC-NAT – служат для настройки NAT.
  • FILTER INPUT, FILTER FORWARD и FILTER OUTPUT – брандмауэр.
  • HTB GLOBAL (QUEUE TREE) и SIMPLE QUEUS служат для манипуляций с трафиком: назначения приоритета, ограничений скоростей и др.
  • BRIDGE DECISION – решение об обработке в мостовом соединении.
  • TTL – это TTL.
  • ACCOUNTING – возможности RADIUS-сервера.
  • ROUTING ADJUSTMENT – донастройка маршрутизации.

Пакеты, направленные маршрутизатору (chain: input):

Пакеты проходящий через роутер (chain: forward):

Трафик исходящий от MikroTik (chain: output):

MikroTik настройка firewall. Connection Tracker

Connection Tracker выполняет следующие функции:

  • Содержит информацию обо всех активных соединениях;
  • Отвечает за управление соединениями;
  • Отвечает за дефрагментацию пакетов;
  • Влияет на загрузку процессора.

Место Connection Tracker на схеме Traffic Flow:

По умолчанию Connection Tracker работает в режиме auto. Это значит, что он будет работать тогда, когда для firewall будет создано хотя бы одно правило. Помимо этого, могут быть установлены следующие режимы:

  • Yes – всегда работает.
  • No – отключен. При этом не будут отслеживаться состояния подключений, NAT и большая часть функционала брандмауэра (не будет работать маркировка соединений, протокол L7 и многое другое).

Connection State. Состояние соединений

С помощью правил мы можем обрабатывать пакеты на основании их состояния. Любое соединение будет находиться в одном из следующих состояний:

  • New – это новое соединение. Например, кто-то обращается к нашему маршрутизатору запросом ping и первый пакет что приходит, получит данное состояние;
  • Established – после того как запрос идет дальше, он переходит в состояние установленное;
  • Related – связанное. Такое состояние появляется, например, когда клиент посылает запрос серверу, который недоступен и клиент получает ответ от роутера.
  • Invalid – не идентифицированное. Подключение, которое маршрутизатор не может опознать.
  • Notrack – создается для Raw Filter, минуя Connection Tracker. Поэтому пакеты не фрагментируются.

Connection State не совпадает с TCP State.

Connection List

На вкладке “Connections”, можно увидеть информацию о всех подключениях. Выглядит это следующим образом:

Давайте посмотрим какие данные мы можем получить:

  • Src. Address Port – исходящий IP-адрес и порт;
  • Dst. Address Port – IP-адрес и порт назначения;
  • Protocol – протокол;
  • Connection Mark – маркировку подключения;
  • Timeout – время жизни соединения;
  • TCP State – состояние TCP соединения (established, close, time-wait, syn-sent, syn-received).

Все свойства, указанные во вкладке Connection List, предназначены только для чтения.

MikroTik firewall. Общее описание

Основное назначение брандмауэра является то, что на основании правил разрешать или запрещать передачу данных из одной сети в другую.

Что не умеет брандмауэр MikroTik:

  • Блокировать сайты по категориям;
  • Сканирование на вирусы в режиме реального времени;
  • Создание отчетов;
  • Биллинг;

Настройка безопасности маршрутизатора MikroTik может быть реализована двумя способами:

  • Нормально открытый. Данный способ организации защиты предполагает, что все будет разрешено, что не запрещено;
  • Нормально закрытый. При этом виде настройки firewall все запрещено, что не разрешено.

Для данной статьи мы рассмотрим пример нормально закрытого брандмауэра. Так как, на мой взгляд, нормально открытый имеет ряд недостатков:

  • Большие затраты для решения, что запрещать;
  • Из-за большого количества условий может значительно снизиться производительность роутера.

Важно! Рекомендуем выполнять настройку firewall при удаленном подключении к MikroTik используя режим Safe Mode.

В случае неправильной настройки бранмауэра и потери доступа к устройству, данная функция поможет восстановить подключение, отменив внесенные изменения. Подробнее узнать о безопасном режиме можно в материале: MikroTik Safe Mode.

Место брандмауэра на Packet Flow:

Расположение Filter Input на Packet Flow

Firewall на MikroTik. Порядок расположения правил

Работу брандмауэра MikroTik условно можно разделить на две части: условие (если…) и действие (то…). Могут содержать несколько условий, при этом, чтобы правило сработало должны быть выполнены все условия.

Правила должны состоять в цепочке (chain):

  • одной из трех предопределенных: Input, Output, Forward;
  • пользовательской (action=jump).

А также подразделяются на терминирующие и нетерминирующие:

  • терминирующие: accept, drop, fasttrack, reject, tarpit;
  • нетерминирующие: add dst to address list, add source to address list, jump, log, return, passthrough.

Терминирующие правила содержат окончательное действие – принять, отклонить.

Нетерминирующие – просто производят какой-то процесс – занести в лог, добавить в address list.

При настройке firewall MikroTik важно соблюдать последовательность правил, так как обрабатываются они по порядку и сразу с нужной цепочки.

Обработка заканчивается после первого совпадения с терминирующим правилом. Если совпадения нет, то пакет отправляется на следующий этап обработки по схеме прохождения трафика.

RAW Filter

Назначение RAW Filter – пропускать или отклонять пакеты до их попадания в Connection Tracker. За счет этого может быть снижена нагрузка для ЦП во время DoS-атак.

В RAW-Filter только две цепочки – Prerouting и Output – и меньше возможностей настройки по сравнению с «классическим» файрволом. Место Raw Filter на Traffic Flow:

MikroTik настройка firewall. Базовая защита роутера

Приступим к настройке firewall на MikroTik. Как говорилось ранее мы будем настраивать нормально закрытый тип брандмауэра.

Во время настройки безопасности маршрутизатора будем придерживаться следующих принципов:

  • Располагать друг за другом правила одной цепочки;
  • Минимизировать количество условий, через которые должен пройти пакет;
  • Не забывать подписывать комментарии.

Настройка WAN-интерфейса

Чтобы избежать ошибок и получить универсальный конфиг, давайте создадим новый interface list и добавим туда WAN интерфейс:

  • Interfaces = Interface List = Lists;
  • “+”
  • Name: ISP;
  • OK

Создали новый interface List с именем “ISP”, добавим в него WAN-интерфейс:

В нашем примере WAN настроен на порту ether1, если у вас интернет настроен на другом порту или PPPoE-подключение, то подставьте свое значение.

Connection Tracker

Следующим шагом изменим время жизни для установленных подключений, по умолчанию у MikroTik данный параметр равен одному дню. Откроем:

Установим параметру TCP Established Timeout значение равное 2-м часам:

Настройка безопасности цепочки INPUT

Откроем вкладку Filter Rules и настроим firewall для входящего трафика на роутер MikroTik (chain: input).

Первым создадим условие, разрешающее established, related и untracked-трафик:

Переходим на меню Action:

Следующее условие будет запрещающее, чтобы заблокировать неидентифицированный трафик (invalid):

Открыв порт 8291 мы разрешим к Mikrotik удаленный доступ по Winbox, для оперативной настройки роутера:

Следующим шагом разрешим DNS-запросы со всех интерфейсов, кроме “ISP”:

Обратите внимание, что перед ISP стоит “!”. Это очень важно!

Если вы разрешим запросы извне на 53 порт, то любой внешний хост сможет оправлять запросы нашему DNS-Серверу, тем самым сильно увеличивая нагрузку на роутер и использовать его для проведения атак. Подробнее об этом можно узнать из статьи: MikroTik настройка DNS Server.

Текущая настройка закрывает 53 порт для внешних интерфейсов.

Последним правилом для цепочки Input, мы заблокируем остальной трафик:

Переходим к настройке цепочки forward.

Настройка безопасности цепочки FORWARD

Напомним, что цепочка forward участвует в обработке пакетов, проходящие через маршрутизатор.

Первым условием разрешим established, related и untracked-соединения:

Заблокируем неидентифицированный трафик (invalid):

Запрещаем все извне, кроме DSTNAT:

На этом базовая настройка firewall MikroTik завершена. Окончательный вариант конфигурации и расположения правил firewall должен быть следующий:

Mikrotik настройка firewall. Пример базовой конфигурации брандмауэра для дома.

Для удобства сохраню данную конфигурацию. Скачать файл конфигурации базовой настройки Firewall MikroTik можно тут.

Для доступа компьютеров из локальной сети в интернет необходимо настроить NAT. Как это сделать — подробно написано в статье MikroTik проброс портов и настройка NAT для доступа в интернет.

Отключить firewall на MikroTik

Рассмотрим как в MikroTik отключить firewall. Если при конфигурировании роутера или проверки работы сервиса возникает необходимость отключить файрвол, то сделать это довольно просто. Мы можем выключить все активные правила нажатием кнопки Disable, предварительно выделив их:

Mikrotik отключить firewall

Либо вовсе удалить их, предварительно сохранив конфигурацию. По умолчанию брандмауэр Микротик настроен как правильно открытый, по этому все что не запрещено — разрешено.

MikroTik настройка firewall. Как защитить роутер от DDoS-атаки

DoS или DDoS-атака если говорить простыми словами представляет из себя множественную отправку запросов на атакуемый хост, что выводит систему из строя или значительно затрудняет доступ к ней.

Защитить MikroTik от DDoS атак можно с помощью двух методов:

Рассмотрим эти способы подробнее.

Защита MikroTik от DDoS-атак с помощью Connection Limit

Выполним настройку firewall, чтобы MikroTik мог выделять IP-адреса, одновременно открывшие 30 и более соединений, заносить их в черный список и блокировать доступ.

Обработка большого количества соединений с помощью Connection Limit вызывает большую нагрузку на процессор.

Рекомендуется использовать вместе с connection-state=new или с tcp-flags=syn.

Откроем пункт меню Advanced:

Следующим условием мы укажем количество подключений с одного IP-адреса при достижении которого хост попадет в черный список:

Добавляем в черный список:

Создадим запрещающее правило для адресов из черного списка BAN_black_list:

Расположим правила firewall следующим образом:

Mikrotik настройка безопасности от DoS-атак с помощью Connection Limit

Если у вас внутри локальной сети есть сервис “смотрящий” наружу и подверженный DDoS атаке, то необходимо создать аналогичное правило для цепочки Forward, как показано на рисунке выше.

На этом настройка защиты MikroTik от DDoS-атаки методом Connection Limit закончена.

Защита MikroTik от DDoS-атаки с помощью Destination Limit

Настроим защиту firewall MikroTik от DDoS атак так, что роутер будет передавать все новые попытки подключения на пользовательскую цепочку, которая проверяет условие:

  • Есть 50 разрешенных соединений и если в течение секунды с адреса открывается еще 50 и более соединений, то IP заносится в черный список после чего блокируется.

Перенаправляем новые попытки подключения в пользовательскую цепочку:

Перейдем к конфигурированию пользовательской цепочки:

Добавляем хосты, которые подошли под условия в черный список:

Создадим запрещающее правило блокирующее данный лист:

Расположим правила firewall так:

Настройка файрвола Mikrotik от DDoS-атак с помощью Destination Limit

Не забывайте, если у вас есть сервис внутри локальной сети, “смотрящий” наружу, то необходимо добавить правило в “Forward”.

На этом настройка firewall MikroTik от DDoS-атак закончена.

MikroTik настройка firewall. Защита от брутфорса

Рассмотрим, как защитить MikroTik от перебора паролей (брутфорс). Покажем это на примере попыток перебора паролей для входа на MikroTik через Winbox.

Аналогичным образом можно защищать сервисы, к которым можно получить доступ брутфорс-атакой.

Повысим безопасность роутера MikroTik, добавив условие в конфигурацию firewall:

  • Если хост, в течении минуты пробует подключиться с неправильным паролем 4 раза, тогда IP попадает в черный список и блокируется:

Направим все новые подключения адресованные на порт 8291 с внешнего интерфейса в пользовательский набор правил (anti-BruteForce):

Дальше создадим пользовательский набор правил, который будет проверять поведение хостов на предмет перебора паролей и блокировать такие попытки.

Откроем меню “Action”:

Следующим шагом добавляем хост, подходящий под условие в черный список:

Блокируем все соединения из черного списка BAN-BruteForce в RAW Filter:

Далее вкладка “Advanced”:

Создадим запрещающее правило:

Расположим ранее созданные правила firewall следующим образом:

MikroTik настройка firewall. Защита от перебора паролей.

С защитой от перебора паролей для RDP-подключений дела обстоят сложнее и требует более детального и гибкого подхода. Например, аналогичное правило при разрыве подключения и попытках восстановления, заблокирует пользователя.

Как защитить RDP соединение от брутфорс-атак мы поговорим в отдельной статье.

На этом настройка защиты Mikrotik от перебора паролей закончена.

Настройка безопасности MikroTik. Защита от сканирования портов

Давайте немного модифицируем нашу конфигурацию firewall, что позволит защитить MikroTik от сканирования портов. Сканирование портов – это попытки подключиться на разные порты с целью определения их доступности.

Сканирование портов может осуществляться разными способами, каждый из которых имеет свои особенности. Настроим защиту от большинства известных видов сканирования.

Не буду вдаваться в теорию, а просто покажу готовое решение, которое успешно работает многие годы.

Чтобы не запутаться перед каждым новым условием я буду писать заголовок, который, будет служить комментарием к нему.

Port scanners to list:

Защиту от сканирования портов для MikroTik можно настроить с помощью опции Port Scan Detection (PSD):

NMAP FIN Stealth scan:

SYN/FIN scan:

SYN/RST scan:

FIN/PSH/URG scan:

ALL/ALL scan:

NMAP NULL scan:

Осталось создать запрещающее правило, которое заблокирует соединения для IP-адресов из списка “ BAN_black_list”:

Меню “Advanced” в пункте Src. Address List из выпадающего меню выберем наш адрес лист (BAN_black_list):

Данное условие firewall необходимо добавить в цепочки “Input” и ”Forward”. Правильное расположение всех правил можно посмотреть на рисунке ниже:

MikroTik защита от сканирования портов.

Скачать полную конфигурацию firewall MikroTik с настроенной защитой от сканирования, перебора паролей и DoS-атак можно тут.

А также рекомендуем изучить статьи:

Настройка firewall на MikroTik закончена. Надеюсь, данная статья была вам полезна. Если возникли вопросы пишите в комментарии.

Освоить MikroTik вы можете с помощью онлайн-курса «Настройка оборудования MikroTik». В курсе изучаются все темы из официальной программы MTCNA. Автор – официальный тренер MikroTik. Материал подходит и тем, кто уже давно работает с оборудованием MikroTik, и тем, кто еще не держал его в руках. В состав входят 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.


Источник: smartadm.ru