- Концепция безопасности: зачем нужен firewall в MikroTik
- Подготовка
- Настройка firewall в MikroTik
- Разделение внутреннего и внешнего трафика
- Защита от метода перебора
- Настройка NAT и проброс портов на MikroTik
- Заключение
Firewall (или межсетевой экран) — это система защиты, которая контролирует и фильтрует сетевой трафик между различными сетями, например, между локальной сетью и интернетом. Он не допускает несанкционированный доступ к ресурсам и защищает данные от внешних угроз.
Межсетевой экран работает по набору правил, которые определяют, какой трафик разрешен, а какой должен быть заблокирован. Они могут учитывать IP-адреса источника и назначения, порты, протоколы и даже содержимое пакетов данных.
Концепция безопасности: зачем нужен firewall в MikroTik
Firewall в MikroTik — это ключевой элемент системы защиты, который отвечает за контроль всех данных, которые проходят через маршрутизатор. Любая сеть, подключенная к интернету, потенциально уязвима: злоумышленники могут попытаться получить доступ к устройствам, перехватить трафик или вывести оборудование из строя. Чтобы этого не произошло, необходимо фильтровать и управлять сетевыми соединениями — этим занимается firewall.
В MikroTik межсетевой экран работает на уровне пакетов данных и применяет правила, которые определяет, какой трафик разрешен, а какой должен быть отклонен. Это позволяет гибко настраивать политику безопасности в зависимости от потребностей: например, разрешать доступ к внутренним сервисам только из определенных сетей или полностью закрыть входящие подключения из интернета.
С помощью firewall в MikroTik можно:
- Контролировать входящий и исходящий трафик. Настройка правил позволяет разрешать или блокировать соединения на основе адресов, портов и протоколов.
- Предотвращать сетевые атаки. Firewall блокирует подозрительные запросы, сканирование портов и попытки несанкционированного доступа.
- Ограничивать доступ к ресурсам. Можно задать, кто имеет право подключаться к определенным сервисам или IP-адресам.
- Оптимизировать использование сети. Некоторые типы трафика можно приоритизировать или ограничить, чтобы снизить нагрузку на канал.
- Вести журнал событий. Система логирования помогает отслеживать сетевую активность и быстро реагировать на инциденты.
Подготовка
Чтобы настроить firewall в MikroTik, нужно понимать, как он устроен и зачем нужны его правила. Без этого легко запутаться: одни пакеты будут блокироваться без причины, другие — проходить, хотя не должны.
Firewall можно настроить через командную строку, WinBox или WebFig. Разница только в интерфейсе: в CLI все делается вручную, а в WinBox и WebFig — через меню.
В основе работы firewall лежат цепочки — наборы правил, применяемые к разным видам трафика. Их три:
- INPUT проверяет пакеты, которые направлены к самому маршрутизатору, например, когда вы подключаетесь к нему по SSH или через WinBox.
- OUTPUT обрабатывает исходящий трафик, который создает сам MikroTik, например, при обновлении системы или отправке журналов.
- FORWARD — фильтрует транзитный трафик, который проходит через маршрутизатор от одного клиента к другому.
Пакеты обрабатываются последовательно — сверху вниз. Как только срабатывает подходящее правило, проверка заканчивается. Если ни одно не подошло, применяется правило по умолчанию — пропуск пакета. Поэтому порядок имеет значение: неправильно расположенное правило может заблокировать нужное соединение или, наоборот, оставить дыру в защите.
MikroTik также определяет состояние соединения, чтобы понимать, как обращаться с каждым пакетом. Всего таких состояний четыре:
- new — новое соединение, которое только устанавливается;
- established — действующее соединение, по которому уже идет обмен данными;
- related — дополнительное соединение, связанное с существующим (например, при передаче данных через FTP);
- invalid — ошибочное соединение, которое маршрутизатор не может распознать.
Как правило, firewall пропускает established и related соединения, блокирует invalid, а для new применяет отдельные фильтры. Это позволяет защитить маршрутизатор и сеть от атак, не мешая нормальной работе пользователей.
Настройка firewall в MikroTik
Далее перейдем к практике — настройке фильтрации трафика через консоль RouterOS.
Командная строка (CLI) — основной инструмент для управления устройством, хотя аналогичные действия можно выполнить через WinBox или WebFig. CLI позволяет точно контролировать процесс и видеть структуру конфигурации в реальном времени.
Для начала стоит посмотреть, какие правила уже есть в системе. Это поможет избежать конфликтов и случайного дублирования.
Введите команду:
Если маршрутизатор новый и фильтры еще не создавались, появится только подсказка с обозначением флагов:
Также можно использовать клавишу ?, чтобы увидеть список доступных параметров и возможных аргументов команд.
Далее переходим в раздел фильтрации трафика командой:
[admin@MikroTik] /ip firewall filter>
Теперь можно добавить первые правила. Начинают обычно с разрешения уже установленных соединений, чтобы не прерывать текущие подключения и не потерять доступ к маршрутизатору. Для этого вводится команда:
Эта строка говорит маршрутизатору принимать пакеты, которые относятся к активным или связанным соединениям. Например, если вы уже подключены к устройству через WinBox или SSH, это правило позволит сохранить сессию после применения новых фильтров.
Затем стоит разрешить доступ только с доверенных IP-адресов. Это базовое требование безопасности — ограничить возможность подключения к маршрутизатору извне:
В этом правиле указывается, что трафик разрешается только с адресов, занесенных в список trusted_hosts. Сам список нужно создать отдельно, добавив в него диапазон адресов, откуда разрешено подключение. Это могут быть, например, офисные компьютеры, серверы или домашние устройства администратора.
Еще одно правило — разрешение ICMP-запросов, то есть отклик на ping. Оно помогает проверить доступность маршрутизатора и диагностику сети. Чтобы включить ответ на ping, используется команда:
Если нужно, наоборот, скрыть устройство от внешних проверок, то значение accept можно заменить на drop:
Некоторые администраторы отключают ping, чтобы скрыть активность сети, но в большинстве случаев его оставляют включенным для упрощения диагностики.
После создания разрешающих правил добавляется финальный фильтр, который блокирует все, что не подошло под предыдущие условия. Он очень важен, так как без него маршрутизатор будет зря тратить ресурсы на нерелевантные запросы и потенциально опасный трафик.
Команда выглядит таким образом:
Правило всегда ставится в самый конец цепочки, иначе оно заблокирует весь трафик, включая разрешенный.
Теперь можно вывести список всех установленных фильтров и убедиться, что они применились:
Пример результата:
0 ;;; разрешить established и related
chain=input action=accept connection-state=established,related
1 chain=input action=accept src-address-list=trusted_hosts
2 chain=input action=accept protocol=icmp
3 chain=input action=drop
Итак, подобный набор правил создает базовую защиту маршрутизатора. Он разрешает уже установленные соединения, дает доступ только доверенным устройствам, отвечает на ping и блокирует все остальное.
Чтобы система знала, какие IP считать доверенными, нужно создать список адресов. Для этого пропишите команду:
[admin@MikroTik] /ip firewall address-list>
Проверьте, есть ли уже созданные списки:
Если список пуст, добавляем свой диапазон адресов. Например, пусть локальная сеть использует диапазон 192.168.0.0/24, а сам маршрутизатор имеет IP 192.168.0.1:
После этого убедитесь, что список создан:
Пример вывода:
0 trusted_hosts 192.168.0.2-192.168.0.254 nov/02/2025 14:23:10
Теперь маршрутизатор принимает подключения только от этих адресов. Если пакет пришел с неизвестного источника, он будет заблокирован последним правилом.
Работа firewall теперь выглядит так: устройство получает пакет и проверяет его по цепочке правил сверху вниз. Если пакет принадлежит действующему соединению — он пропускается. Если пришел с доверенного адреса — тоже пропускается. Если это обычный ping, маршрутизатор ответит. Все остальное будет отклонено.
Разделение внутреннего и внешнего трафика
Разделение адресов локальной сети и интернета помогает маршрутизатору понимать, какие узлы находятся внутри инфраструктуры, а какие подключаются извне. От этого шага зависит корректность фильтрации пакетов и защита сети от несанкционированных обращений.
Идея заключается в том, чтобы задать маршрутизатору перечень адресов, относящихся к частным подсетям. Все пакеты, поступающие из этих диапазонов, будут восприниматься как внутренние, а остальные — как внешние. Так можно применять разные правила безопасности к локальному и интернет-трафику: внутренний не будет излишне ограничиваться, а внешний будет проходить строгую проверку.
Чтобы все работало корректно, используют рекомендации IETF (Internet Engineering Task Force) — международного сообщества, которое определяет сетевые стандарты. В документе RFC6890 описано, какие диапазоны адресов считаются частными, зарезервированными или специальными. Они не маршрутизируются в интернете, их применение ограничено внутренними сетями.
Для MikroTik нужно создать отдельный список, куда будут внесены все такие диапазоны. Делается это командами:
add address=172.16.0.0/12 comment=RFC6890 list=not_in_internet
add address=192.168.0.0/16 comment=RFC6890 list=not_in_internet
add address=10.0.0.0/8 comment=RFC6890 list=not_in_internet
add address=169.254.0.0/16 comment=RFC6890 list=not_in_internet
add address=127.0.0.0/8 comment=RFC6890 list=not_in_internet
add address=198.18.0.0/15 comment=RFC6890 list=not_in_internet
add address=192.0.0.0/24 comment=RFC6890 list=not_in_internet
add address=192.0.2.0/24 comment=RFC6890 list=not_in_internet
add address=198.51.100.0/24 comment=RFC6890 list=not_in_internet
add address=203.0.113.0/24 comment=RFC6890 list=not_in_internet
add address=100.64.0.0/10 comment=RFC6890 list=not_in_internet
add address=240.0.0.0/4 comment=RFC6890 list=not_in_intern
Дополнительно нужно внести диапазоны, которые выделены под многоадресное вещание и технологию 6to4, — она предназначена для передачи IPv6 через IPv4-сети. Эти диапазоны указаны в документах RFC2780 и RFC3068:
add address=192.88.99.0/24 comment="6to4_RFC3068" list=local_networks
Убедитесь, что список создан и активен. Для этого введите:
Ожидаемый результат:
1 local_networks 172.16.0.0/12 nov/02/2025 15:40:12
2 local_networks 192.168.0.0/16 nov/02/2025 15:40:12
3 local_networks 224.0.0.0/4 nov/02/2025 15:40:12
4 local_networks 192.88.99.0/24 nov/02/2025 15:40:12
Теперь маршрутизатор умеет отличать локальные адреса от внешних.
Следующий шаг — настройка фильтров, чтобы ограничить нежелательные соединения и защитить пользователей внутри сети. Перейдите к разделу фильтров:
Первым делом желательно исключить из обработки соединения, которые уже установлены. MikroTik может автоматически ускорять обработку таких пакетов, минуя избыточные проверки. Для этого используется команда:
Она сообщает устройству, что пакеты из существующих или связанных соединений можно пропускать напрямую без дополнительной фильтрации.
Затем нужно добавить разрешающее правило, которое позволяет передавать данные между внутренними и внешними адресами, если соединение установлено или является частью уже существующего обмена:
add action=accept chain=forward comment="Allow established and related connections" connection-state=established,related
Далее — отсейте некорректные соединения. Они могут возникать из-за ошибок в протоколах, нестабильного соединения или попыток сканирования сети. Чтобы не тратить ресурсы на их обработку, добавляется правило:
Кроме того, стоить ограничить обращения из локальной сети к адресам, которые не относятся к публичным. Если внутренний компьютер попытается связаться с приватным диапазоном за пределами организации, пакет будет отброшен:
Теперь нужно защитить сеть от внешних пакетов с поддельными исходными адресами, которые относятся к частным диапазонам. Их часто используют злоумышленники, чтобы замаскировать свои действия:
Когда вы примените все эти фильтры, маршрутизатор начнет разделять и контролировать все сетевые потоки. Попытки подмены адресов или обращения к недопустимым подсетям заблокируются сразу, еще до того, как данные достигнут внутренней сети.
Защита от метода перебора
Фильтрация по IP-адресам никогда не лишняя, но она не всегда защищает от автоматизированных атак. На практике многие боты постоянно сканируют сеть в поисках открытых портов MikroTik — особенно SSH (порт 22). Как только бот обнаруживает доступный вариант, он начинает массовый перебор паролей, используя готовые словари. Цель таких атак — получить доступ к устройству и использовать его, например, для рассылки спама или участия в ботнетах.
Существуют огромные базы стандартных паролей: admin, root, 12345, qwerty и сотни тысяч других комбинаций. Даже если пароль выглядит уникальным, его можно подобрать методом brute force — последовательным перебором символов. Современные облачные серверы выполняют такие атаки с большой скоростью, поэтому важно не надеяться на сложность пароля, а ограничить количество попыток авторизации.
MikroTik позволяет создать систему автоматической защиты от brute force — маршрутизатор сам будет отслеживать подозрительные попытки входа и блокировать нарушителей.
Начинается все с добавления базового правила, которое сбрасывает соединения от IP-адресов из «черного списка»:
Теперь нужно настроить логику, по которой устройство будет определять, что IP-адрес стоит внести в этот список. Как это сделать? Разрешите пользователю несколько ошибок подряд, но если попытки повторяются слишком часто — система должна распознать атаку и заблокировать источник.
Для этого вам потребуются промежуточные списки. Первый — ssh_stage1. В него попадают все новые соединения к порту SSH. Если авторизация прошла успешно, адрес автоматически удаляется через минуту:
Если в течение этой минуты тот же IP пытается снова подключиться, он попадает в следующий список — ssh_stage2:
Повторная ошибка в течение этого времени приведет к попаданию адреса в ssh_stage3:
Если после трех неудачных попыток IP продолжает подключаться, он будет добавлен в «черный список» — ssh_blacklist, где останется заблокированным на 10 дней:
Эта система отсеивает ботов, которые пытаются подбирать пароли в автоматическом режиме. Если реальный пользователь ошибся пару раз, он не попадет под блокировку: адрес удалится из временных списков через минуту. Но если кто-то начнет штурмовать SSH-порт без остановки, MikroTik быстро обнаружит это и заблокирует источник.
При необходимости системный администратор может разблокировать IP вручную — достаточно удалить его из списка ssh_blacklist.
Настройка NAT и проброс портов на MikroTik
NAT (Network Address Translation) — это механизм, который позволяет нескольким устройствам использовать один внешний IP-адрес для выхода в интернет. Без NAT маршрутизатор не смог бы корректно направлять пакеты из внутренней сети во внешнюю и обратно, потому что частные IP-адреса (например, 192.168.x.x) не маршрутизируются в интернете.
Когда устройство из локальной сети отправляет запрос, маршрутизатор подменяет его исходный адрес на свой внешний IP. При ответе от внешнего сервера маршрутизатор определяет, к какому внутреннему узлу относится этот пакет, и перенаправляет его в нужную точку. Все это происходит автоматически, и пользователь видит просто стабильное подключение к сети.
Но бывают ситуации, когда нужно сделать обратное — чтобы запрос из интернета попал к конкретному устройству внутри локальной сети. Например, если в офисе установлен сервер, IP-видеонаблюдение или игровая консоль, к которым нужен доступ извне. В таких случаях используется Port Forwarding — перенаправление запросов с определенных портов маршрутизатора на внутренние адреса.
Рассмотрим, как выполняется базовая настройка NAT и проброс портов в MikroTik.
Сначала нужно определиться, какой тип соединения используется — с динамическим или статическим IP-адресом. От этого зависит способ настройки NAT.
Если провайдер выдает динамический адрес (он может меняться при каждом подключении), то применяется правило masquerade. Оно автоматически подменяет внутренние адреса на тот внешний IP, который действует в данный момент:
В этой команде:
- chain=srcnat указывает, что правило применяется к исходящему трафику;
- out-interface=ether1 внешний сетевой интерфейс, подключенный к интернету;
- action=masquerade выполняет подмену адреса.
Когда вы примените это правило, все устройства локальной сети смогут выходить в интернет, используя IP-адрес маршрутизатора. MikroTik при этом автоматически отслеживает, какой внутренний компьютер сделал запрос, и возвращает ответ именно ему.
Если же интернет-провайдер закрепил за организацией постоянный IP-адрес, то лучше задать его вручную. В этом случае используется действие src-nat:
Где 203.0.113.10 — это внешний IP, через который весь локальный трафик будет выходить в интернет.
Теперь рассмотрим обратный процесс — проброс портов. Если требуется, чтобы внешние пользователи могли подключаться к устройствам внутри сети, это ваш вариант.
Например, в офисе есть сервер с адресом 192.168.88.5, к которому нужно получить доступ по RDP (порт 3389). Чтобы подключение снаружи попадало на этот сервер, создается правило:
С этого момента все входящие соединения на порт 3390 маршрутизатор будет перенаправлять на 192.168.88.5:3389. Если пользователь подключится к внешнему IP маршрутизатора с указанием порта 3390, то попадет на сервер внутри сети.
Аналогичным образом можно открыть доступ, например, к камере видеонаблюдения. Пусть у камеры внутренний IP — 192.168.88.50, а ее веб-интерфейс доступен по порту 8080. Тогда настройка будет выглядеть так:
Теперь, открыв в браузере адрес http://<внешний_IP>:9090, можно попасть прямо в интерфейс камеры.
Если нужно ограничить доступ только для определенного внешнего IP-адреса (например, чтобы подключаться могли только администраторы), можно добавить фильтр по источнику:
Таким образом, подключение будет разрешено только с IP 203.0.113.25, а все остальные запросы маршрутизатор отбросит.
Заключение
В этой статье мы рассмотрели ключевые этапы настройки firewall в MikroTik: фильтрация трафика, создание правил безопасности, настройка NAT и защита от попыток перебора паролей. Со всеми правилами маршрутизатор сможет безопасно пропускать нужный трафик, блокировать подозрительные подключения и обеспечивать стабильную работу сети.