Проброс порта (port forwarding) на MikroTik — это правило destination NAT в firewall RouterOS, которое перенаправляет входящие пакеты с внешнего адреса и порта роутера на нужный хост и порт во внутренней сети. Так снаружи становится доступен сервис за роутером: удаленный рабочий стол, веб-сервер, камера. Фильтрация портов — это отдельный механизм: правила /ip firewall filter, которые разрешают или запрещают трафик на конкретных портах.
Содержание
- Как MikroTik работает с портами: NAT и firewall
- Проброс порта через терминал RouterOS
- Проброс через WinBox или WebFig
- Разрешить проброшенный трафик в firewall filter
- Частые сервисы: порты и правила
- Фильтрация портов: открыть и закрыть
- dst-nat, netmap и masquerade: чем различаются
- Если проброс не работает
- Где применяется на практике
- FAQ
- Выводы
Ниже разберу оба сценария на RouterOS 7: как пробросить порт командой в терминале и через WinBox, почему одного правила NAT обычно мало, как открыть или закрыть порт фильтром и чем dst-nat отличается от netmap и masquerade. Команды приведены для терминала RouterOS — их же значения задаются в полях WinBox.
Проверено на RouterOS 7 (актуальная стабильная ветка на 2026 — 7.24.x) и WinBox 4. WinBox 4, в отличие от WinBox 3, кроссплатформенный — есть сборки под Windows, Linux и macOS.
Как MikroTik работает с портами: NAT и firewall
В RouterOS входящий пакет проходит через firewall, и за работу с портами отвечают две разные таблицы. Их важно не путать:
/ip firewall nat— меняет адреса и порты пакета. Именно здесь живет проброс (цепочкаdstnat, действиеdst-nat) и выход в интернет (цепочкаsrcnat, действиеmasquerade)./ip firewall filter— решает, пропустить пакет или отбросить. Здесь порт открывают (action=accept) или закрывают (action=drop).
Цепочки (chain) задают, какого трафика касается правило:
dstnat— входящие пакеты до маршрутизации (в них меняют адрес назначения); в фильтре аналог по смыслу — трафик, идущий на сам роутер и сквозь него;input— трафик, адресованный самому роутеру (доступ к WinBox, SSH, веб-интерфейсу);forward— трафик, проходящий сквозь роутер к хостам локальной сети;srcnat/output— исходящий трафик.
Ключевой момент: NAT меняет адрес назначения пакета в цепочке dstnat до маршрутизации, а дальше пакет идет в цепочку forward таблицы filter. Поэтому проброс и разрешение трафика — это два отдельных правила в двух разных таблицах.
Проброс порта через терминал RouterOS
Основной сценарий — пробросить порт одной командой в терминале. Возьмем удаленный рабочий стол (RDP): нужно, чтобы обращение на внешний интерфейс роутера по порту 3389 попадало на компьютер 192.168.88.10 внутри сети.
/ip firewall nat add chain=dstnat in-interface=ether1 protocol=tcp dst-port=3389 action=dst-nat to-addresses=192.168.88.10 to-ports=3389 comment="RDP to office PC"
Разберу параметры по порядку:
chain=dstnat— правило обрабатывает входящие пакеты, у которых меняется адрес назначения;in-interface=ether1— интерфейс, куда приходит трафик из интернета (WAN); подставьте свой WAN-интерфейс;protocol=tcp— протокол; у MikroTik в поле protocol указывают именно транспортный протокол (tcp,udp,icmp), а не имя прикладной службы;dst-port=3389— порт, на который стучатся снаружи;action=dst-nat— выполнить destination NAT;to-addresses=192.168.88.10— внутренний хост, которому переадресуется трафик;to-ports=3389— порт на внутреннем хосте (может отличаться от внешнего).
Посмотреть, что правило создалось, можно так:
/ip firewall nat print
Вывод покажет строку с флагами и параметрами (номер, счетчики и точный порядок столбцов зависят от версии и конфигурации):
Flags: X - disabled, I - invalid, D - dynamic
0 chain=dstnat action=dst-nat to-addresses=192.168.88.10 to-ports=3389
protocol=tcp in-interface=ether1 dst-port=3389 comment="RDP to office PC"
Важно: to-ports не обязан совпадать с dst-port. Если снаружи вы хотите слушать нестандартный порт (например 33089), а внутри у сервиса штатный 3389 — укажите dst-port=33089 to-ports=3389. Это частый прием, чтобы не светить типовой порт наружу.
Проброс через WinBox или WebFig
Те же параметры задаются в графическом интерфейсе — WinBox или веб-интерфейсе WebFig. Порядок действий в WinBox 4:
- Подключитесь к роутеру, откройте
IP - Firewall - вкладка NATи нажмите+. - На вкладке
Generalзаполните:Chain: dstnat,Protocol: 6 (tcp),Dst. Port: 3389,In. Interface: ether1. - Перейдите на вкладку
Action: выберитеAction: dst-nat,To Addresses: 192.168.88.10,To Ports: 3389. - Нажмите
OK. Правило появится в списке NAT.
Поля WinBox один в один соответствуют параметрам команды из терминала, поэтому дальше в статье привожу команды: их проще скопировать и проверить.
Разрешить проброшенный трафик в firewall filter
Одного правила NAT часто недостаточно. Если на роутере настроен ограничивающий firewall (а в заводской конфигурации MikroTik он есть), пакет после dst-nat попадет в цепочку forward и может быть отброшен. NAT меняет адрес назначения, но не дает разрешения проходить.
Поэтому к пробросу добавляют правило в фильтре, которое пропускает трафик к внутреннему хосту. Ставить его нужно выше общего запрещающего правила:
/ip firewall filter add chain=forward protocol=tcp dst-address=192.168.88.10 dst-port=3389 action=accept comment="allow RDP forward"
Проверить порядок правил в фильтре:
/ip firewall filter print
Если правило accept окажется ниже общего drop в цепочке forward, оно не сработает — пакет отбросится раньше. Переместить правило вверх можно командой move:
/ip firewall filter move number=5 destination=2
Здесь number — текущий номер правила из print, destination — позиция, куда его поставить.
Частые сервисы: порты и правила
Для типовых служб меняются только протокол и порт. Ниже — сводка того, что подставить в правило dstnat. Внутренний адрес 192.168.88.10 — для примера.
| Сервис | protocol | dst-port | Примечание |
|---|---|---|---|
| RDP (удаленный стол) | tcp | 3389 | RDP работает и по udp/3389, но для проброса достаточно tcp |
| Веб-сервер HTTP | tcp | 80 | |
| Веб-сервер HTTPS | tcp | 443 | |
| SSH | tcp | 22 | |
| FTP (управление) | tcp | 21 | активный режим использует еще порт 20; пассивному нужен диапазон портов |
| Камера RTSP | tcp | 554 | часть камер использует и udp; смотрите модель |
Пример для веб-сервера (HTTP и HTTPS одним правилом через список портов):
/ip firewall nat add chain=dstnat in-interface=ether1 protocol=tcp dst-port=80,443 action=dst-nat to-addresses=192.168.88.10 comment="web server"
Если to-ports не указан, порт назначения не меняется — трафик уйдет на тот же порт, на который пришел. Это удобно, когда снаружи и внутри порты совпадают.
Про FTP отдельно: проброс порта 21 включает только управляющее соединение. В активном режиме нужен еще порт 20, а в пассивном сервер отдает клиенту случайный порт из своего диапазона — его тоже придется пробросить (или настроить диапазон на FTP-сервере). Это типичная причина, по которой «FTP подключается, но список файлов не открывается».
Фильтрация портов: открыть и закрыть
Работа с портами — это не только проброс. Часто нужно просто открыть или закрыть порт на самом роутере, без переадресации.
Открыть порт для доступа к самому роутеру — правило accept в цепочке input. Например, разрешить WinBox (порт 8291) только из локальной сети:
/ip firewall filter add chain=input protocol=tcp dst-port=8291 src-address=192.168.88.0/24 action=accept comment="WinBox from LAN"
Закрыть порт — правило drop. Например, запретить обращение к SSH роутера из интернета:
/ip firewall filter add chain=input protocol=tcp dst-port=22 in-interface=ether1 action=drop comment="block SSH from WAN"
Базовый шаблон защиты роутера строят на состоянии соединения: разрешают уже установленные соединения, а новые извне отбрасывают. Порядок правил в цепочке важен — они проверяются сверху вниз, срабатывает первое подходящее:
/ip firewall filter add chain=input connection-state=established,related action=accept
/ip firewall filter add chain=input connection-state=invalid action=drop
/ip firewall filter add chain=input in-interface=ether1 action=drop comment="drop all other from WAN"
Отключить временно правило, не удаляя, — disable, удалить совсем — remove:
/ip firewall filter disable number=3
/ip firewall filter remove number=3
dst-nat, netmap и masquerade: чем различаются
Три действия NAT легко перепутать, но задачи у них разные:
dst-nat— проброс конкретного порта или адреса на внутренний хост. Это основной инструмент port forwarding.masquerade— частный случай source NAT для выхода в интернет: подменяет адрес источника на адрес WAN-интерфейса. Применяется в цепочкеsrcnatдля исходящего трафика, а не для проброса.netmap— статическое отображение одного диапазона адресов в другой «один к одному». Нужен для публикации целых подсетей, а не отдельного порта; для обычного проброса он избыточен и ведет себя иначе.
Правило выхода в интернет (для полноты картины, к пробросу не относится):
/ip firewall nat add chain=srcnat out-interface=ether1 action=masquerade comment="internet access"
Для проброса одного сервиса берите dst-nat — это верный выбор в большинстве задач.
Если проброс не работает
Типовые симптомы и что проверить:
- Снаружи порт закрыт, изнутри сервис доступен — скорее всего нет правила
acceptв цепочкеforwardили оно стоит нижеdrop. Проверьте/ip firewall filter printи порядок правил. - Проверяете доступ с телефона по мобильной сети, а не из своей же сети — проверка «извне» из локальной сети часто не срабатывает без hairpin NAT; тестируйте с внешнего канала.
- У провайдера серый IP (за его NAT) — проброс на роутере не поможет, внешнего адреса просто нет; нужен белый IP или VPN.
- Указан не тот
in-interface— если WAN приходит через PPPoE, интерфейсом будет pppoe-подключение, а не физическийether1. - FTP подключается, но каталог не грузится — не проброшены порты данных (см. раздел про FTP выше).
Где применяется на практике
Проброс и фильтрация портов на MikroTik — повседневная задача сетевого администратора: опубликовать сервис наружу, закрыть лишние порты роутера, развести доступ по подсетям. Те же принципы (NAT, цепочки firewall, порядок правил) работают и на другом оборудовании — меняется только синтаксис.
Освойте тему на практике
Разобрать NAT, firewall, маршрутизацию и работу с сетевым оборудованием по шагам помогает курс Network engineer в Otus. Посмотреть уровень и формат занятий, не оплачивая курс, можно на бесплатных вебинарах — там разбирают конкретные задачи и отвечают на вопросы.
FAQ
Нужно ли правило в firewall filter, если проброс уже настроен?
Как правило, да. Если на роутере есть ограничивающий firewall (в заводской конфигурации он есть), после dst-nat пакет должен пройти цепочку forward, поэтому туда добавляют правило accept для внутреннего хоста. Без него проброс не сработает.
Можно ли пробросить внешний порт на другой внутренний?
Да. Внешний порт задается в dst-port, внутренний — в to-ports, и они могут не совпадать: например dst-port=33089 to-ports=3389. Так наружу выставляют нестандартный порт, а внутри сервис слушает штатный.
Почему проброс не виден при проверке из своей же сети?
Обращение к внешнему адресу роутера изнутри локальной сети требует hairpin NAT (дополнительного правила srcnat). Без него проще проверять доступ с внешнего канала — например с мобильного интернета.
Выводы
- Проброс порта на MikroTik — это правило
dst-natв таблице/ip firewall nat, цепочкаdstnat; порт снаружи задается вdst-port, внутренний хост и порт — вto-addressesиto-ports. - В поле
protocolуказывают транспортный протокол (tcp,udp), а не имя службы; RDP, HTTP, SSH — этоtcpс соответствующимdst-port. - Одного правила NAT обычно мало: к нему добавляют
acceptв цепочкеforwardтаблицы/ip firewall filter, иначе трафик отбросится. - Открыть или закрыть порт роутера — это правила
acceptилиdropв цепочкеinput; порядок правил важен, проверяются сверху вниз. dst-nat— для проброса,masquerade— для выхода в интернет,netmap— для отображения подсетей; для одного сервиса берутdst-nat.



