Mikrotik проброс портов ftp

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

Настройка Mikrotik с пробросом портов. Зачем это нужно?

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

Настройка Mikrotik, установленная по умолчанию, такова, что компьютеры, находящиеся во внутренней или внешней сети, адреса IP, присвоенные другим терминалам, не видят. Здесь используется правило так называемого маскарада, когда сам маршрутизатор при поступлении запроса подменяет адрес машины, которой он предназначается собственным внешним IP, хотя и открывает необходимый порт. Получается, что все устройства, объединенные в сеть, видят только роутер, а между собой остаются невидимыми.

В связи с этим в некоторых ситуациях для устройств Mikrotik проброс портов становится крайней необходимостью. Наиболее часто встречающимися случаями можно назвать следующие:

  • организация удаленного доступа к устройствам в сети на основе технологий RDP;
  • создание игрового или FTP-сервера;
  • организация пиринговых сетей и настройка корректного функционирования торрент-клиентов;
  • доступ к камерам и системам видеонаблюдения извне через интернет.

Доступ к веб-интерфейсу

Итак, приступаем. Для маршрутизаторов Mikrotik проброс портов (RDP, FTP и т.д.) начинается со входа в систему управления устройством, называемую веб-интерфейсом. И если для большинства известных роутеров в качестве стандартных адресов используются сочетания 192.168 с окончаниями либо 0.1, либо 1.1, здесь такой вариант не проходит.

Для доступа в веб-браузере (лучше всего использовать стандартный Internet Explorer) в адресной строке прописывается комбинация 192.168.88.1, в поле логина вводится admin, а строка пароля, как правило, остается пустой. В случае, когда доступ по каким-то причинам оказывается заблокированным (роутер не воспринимает логин), потребуется сделать сброс настроек, нажав на соответствующую кнопку или отключив устройство от электропитания на 10-15 секунд.

Общие параметры и настройки

Вход в интерфейс произведен. Теперь самое главное: в Mikrotik проброс портов основан на создании так называемых правил исключения для функции Masquerade (тот самый маскарад с подменой IP-адресов, который упоминался выше).

В общих настройках раздела Firewall/NAT можно заметить, что одно правило уже есть. Оно установлено в качестве одной из заводских настроек. Проброс портов в общем случае состоит в добавлении нового правила путем нажатия кнопки со значком плюса, после чего необходимо будет заполнить несколько основных полей настроек.

Примеры используемых портов

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

  • Torrent: tcp/51413;
  • SSH: tcp/22;
  • SQL Server: tcp/1433;
  • WEB Server: tcp/80;
  • telnet: tcp/23;
  • RDP: tcp/3389;
  • snmp: udp/161 и т.д.

Эти значения как раз и будут использованы для проброса каждого такого порта.

Создание правил и выбор действий

Теперь создаем новое правило и приступаем к заполнению полей настроек. Здесь нужно быть очень внимательным и исходить именно из того, какой доступ необходимо осуществить (изнутри наружу или наоборот).

Параметры должны быть такими:

  • Chain: srcnat используется для доступа из локальной сети, так сказать, во внешний мир, dstnat – для доступа к локальной сети извне (выбираем для входящих подключений второй вариант);
  • поля адресов Src. и Dst. оставляем пустыми;
  • в поле протокола выбираем либо tcp, либо udp (обычно устанавливается значение 6 (tcp);
  • Src. Port оставляем незаполненным, т.е. исходящий порт для внешних подключений не важен;
  • Dst. Port (порт назначения): указывается порт для вышеприведенных примеров (например, 51413 для торрентов, 3389 для RDP и т.д.);
  • Any Port можно оставить пустым, но если указать номер, один порт будет использоваться и как входящий, и как исходящий;
  • In. Interface: вписывается порт самого роутера (обычно это ether1-gateway);
  • Out. Interface: указывается исходящий интерфейс (можно пропустить).

Примечание: в случае проброса портов для удаленного подключения извне (RDP) в поле Src. Address указывается IP удаленного компьютера, с которого предполагается осуществлять доступ. Стандартный порт RDP-подключения 3389. Однако большинство специалистов заниматься подобными вещами не рекомендует, поскольку намного безопаснее и проще настроить на маршрутизаторе VPN.

Далее в роутере Mikrotik проброс портов предполагает выбор действия (Action). Собственно, здесь достаточно указать всего три параметра:

  • Action: accept (простой прием), но для доступа извне указывается dst-nat (можно указать более продвинутую настройку netmap);
  • To Addresses: вписывается внутренний адрес машины, на который должно будет происходить перенаправление;
  • To Ports: в общем случае выставляется значение 80, но для корректной работы того же торрента указывается 51413.

Настройка Mikrotik: проброс портов FTP

Наконец, несколько слов о том, какие настройки понадобятся для FTP. Прежде всего нужно настроить сам FTP-сервер, например, на основе FileZilla, но это отдельный разговор. В данном случае нас больше интересует проброс портов FTP Mikrotik, а не настройки серверной части.

Читайте также:  H110m как подключить переднюю панель

Как считается, FTP-сервер хоть и требует указания определенного диапазона портов, однако совершенно нормально работает на управляющем порте 21. Его необходимо задействовать.

Как и в общем случае, сначала нужно создать новое правило, только в данной ситуации их будет два: для управляющего порта и для всего диапазона портов.

Для порта 21 параметры должны быть такими:

  • Chain: dst-nat;
  • Dst. Address: внешний адрес роутера (например, 1.1.1.28);
  • Protocol: 6 (tcp);
  • Dst. Port: 21
  • In. Interface: ether1-gateway.

Для вкладки действия Action устанавливаются следующие значения:

  • Action: dst-nat;
  • Dst. Address: адрес терминала, на котором установлен FTP—сервер;
  • To Ports: 21.

Для диапазона (например, 50000-50050) все опции аналогичны, за исключением двух параметров:

  • в общих настройках для Dst. Port указывается весь диапазон портов;
  • при выборе действия тот же диапазон вписывается в поле To Ports.

Обратите внимание, что при настройке проброса для FTP нужно следовать документации роутера, а в ней сказано, что не рекомендуется использовать начальный порог диапазона портов ниже значения 1024. Это момент тоже стоит учесть.

В принципе, еще можно задействовать функцию Hairpin NAT Mikrotik, но она нужна только в тех случаях, когда требуется вход под внешним IP из локальной сети. В общем случае активировать ее не нужно.

Недавно для корпоративных нужд нам потребовалось поднять FTP-сервер, причем чтобы доступ к нему был как из интернета, так и из локальной сети. М ы воспользовались своими же рекомендациями из статей нашего блога и еще раз протестировали способы настройки MikroTik для этих целей.

Схема нашей сети:

  • Роутер MikroTik RB951G-2HnD с внешним статическим IP, скажем, 1.1.1.28 и локальной сеткой за ним.
  • Компьютер, на котором подняли FileZilla Server, с локальным адресом 192.168.88.10.
  • В настройках FileZilla: управляющий порт FTP-сервера — 21, пассивный режим FTP ( мы решили использовать его как более простой в настройке и безопасный) с диапазоном портов для передачи данных — 50000-50050.

Настройка сервера FileZilla Server

На установке программы FileZilla Server подробно останавливаться не будем — в сети довольно много пошаговых инструкций. Установка никаких проблем не вызвала.

1. Заходим в раздел настроек (Setting). В общих настройках (General Settings) нужно прописать основной (управляющий) порт FTP , мы оставили тот, что по умолчанию — 21. Увеличили таймаут соединения до 600 сек, остальные настройки не меняли.

2. На вкладке Passive Mode Settings (настройки пассивного режима FTP-сервера) указали диапазон портов для передачи данных. Он может быть произвольным, с учетом, конечно, тех портов, что вы уже используете в работе. В документации FileZilla Server не рекомендовалось использовать порты ниже 1024.

Остальные настройки оставили по умолчанию.

3. Переходим в меню Users. В разделе общих настроек (General) указали логин и пароль для будущих подключений.

4. В разделе Shared folders указали пути к папкам, которые будут расшариваться на FTP. Проставили галки разрешений для папок и файлов — можно ли удалять, добавлять, читать, изменять и т. д.

Сразу отметим, что разрешения действий с папками и файлами могут оказаться важными. К примеру, нам понадобилось сохранять данные на FTP-сервер из программы колл-трекинга ACR. Однако программа постоянно сбрасывала соединение, как оказалось впоследствии — по причине отсутствия разрешения на создание папки в каталоге сервера.

5. Добавили FileZilla Server в исключения брандмауера на компьютере, на котором он установлен.

6. Антивирус также может блокировать запросы на FTP-сервер, но у нас с этим все было в порядке.

Включили FTP в IP — Service

На роутере MikroTik заходим в IP — Service и включаем FTP.

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

Настройка проброса портов для FTP сервера

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

Напомним, что FTP-сервер для работы требует двух типов портов: управляющего, по которому передаются служебные данные, и отдельного диапазона портов для передачи файлов. Поэтому мы создали два правила NAT:

  • для управляющего 21-го порта;
  • для диапазона портов 50000-50050.

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

1-е правило — для управляющего порта

На первой вкладке General — прописываем признаки пакетов, которые должны обрабатываться правилом проброса порта.

  • Chain = dstnat (т. е. для пакетов, направленных во внутреннюю сеть).
  • Dst. Address = 1.1.1.28 (адрес назначения, который прописан в пакете, у нас пакеты будут адресованы на внешний адрес роутера, поэтому пишем здесь его).
  • Protocol = 6 (tcp).
  • Dst. Port = 21.
  • In. Interface = ether1.

На вкладке Action — действие, которые выполняется, если пакет им соответствует. В данном случае мы прописываем замену адреса назначения в пакете (dst-nat) и указываем, на какой адрес и порт его заменить — на внутренний адрес компьютера с FTP-сервером (192.168.88.10), порт 21.

2-е правило — проброс диапазона портов для данных

Полностью аналогично прописываем правило переброса портов для диапазона портов данных:

Читайте также:  Как открыть консоль в doom 3

Поднимаем эти правила выше дефолтного правила маскарадинга .

Так как роутер обрабатывает пакеты, обращаясь к правилам по порядку их расположения на вкладке NAT роутера, нам нужно поднять наши правила выше тех, под которые могут попасть наши пакеты, в том числе выше правила маскарадинга, заданного по умолчанию. Просто перетаскиваем их мышью вверх.

Проверили: доступ к FTP серверу работает и с удаленного компьютера, расположенного в сети другого провайдера, и со смартфонов, использующих 3G.

Теперь нам нужно настроить, чтобы к FTP можно было подключиться и из нашей локальной сети, используя те же данные для подключения, то есть, внешний IP-адрес роутера.

Настройка Hairpin NAT MikroTik

По умолчанию зайти из локальной сети по внешнему адресу на роутер нельзя — вот в этой статье подробно объясняется, почему. Поэтому нам нужно настроить отдельные правила NAT, которые бы создавали исключения из общих правил и правильно обрабатывали такие пакеты.

Мы протестировали 3 способа настройки, все они отлично работали в нашей конфигурации.

1-й способ

В общей сложности он содержит 3 правила, работающих в связке.

1.1 — уже созданное нами правило проброса портов, описанное выше. Мы его не изменяем.

1.2. — Правило, которое можно обозначить, как: "Во всех пакетах, у которых адресом источника стоит этот диапазон IP-адресов, а адресом назначения — внешний IP-адрес роутера, поменять адрес назначения на адрес компьютера с FTP-сервером".

  • chain = dstnat;
  • Src. Address = 192.168.88.0/24 — пул локальных IP-адресов, с которых могут поступать обращения на FTP-сервер;
  • Dst. Address = 1.1.1.28;
  • Protocol = 6 (tcp);
  • Action = dst-nat;
  • To Addresses = 192.168.88.10.

1.3. Далее нам нужно позаботиться об ответных пакетах, отправленных FTP-сервером с адреса 192.168.88.10. Ведь он будет адресовать их на то устройство локальной сети, чей адрес был вписан в пакете данных как адрес источника. А так как устройство отправляло пакет на 1.1.1.28, то и ответ оно ждет оттуда, а не с локального 192.168.88.10, соответственно, этот ответный пакет оно отбросит.

П оэтому мы "ловим" этот пакет и обрабатываем следующим правилом: "Для всех пакетов, у которых адресом источника стоит этот локальный диапазон адресов, а адресом назначения — локальный адрес компьютера с сервером, применяем маскарадинг". Маскарадинг — это замена локального IP-адреса устройства, отправившего пакет, на IP-адрес сервера. После применения этого правила в адресе источника в пакете будет вписан 1.1.1.28, а не 192.168.88.10.

2 -й способ

Здесь только 2 правила.

2.1 — созданное нами первое правило проброса портов, но немного измененное.

Из правила убираем In. Interface ether1: так как в этом случае пакеты будут "стучаться" не только через внешний интерфейс, но и через внутренние.

Соответственно, нам не понадобится правило 1.2 из 1-го способа, поскольку измененному правилу проброса портов и без него будут соответствовать пакеты и из внешней, и из локальной сети.

Правило проброса диапазона портов мы не меняли, но как мы уже написали выше — у нас доступ к FTP-серверу прекрасно функционировал и тогда, когда мы отключили это правило вообще.

2.2. А вот правило srcnat (1.3 из 1-го способа) нам понадобится, так как по-прежнему нужно заменить адрес источника:

3 -й способ

Предложен в комментарии к статье про настройку доступа из локальной сети пользователем Stealth.

Также состоит из двух правил: измененного проброса портов и srcnat.

В первоначальном правиле проброса портов мы не указываем в качестве критерия обработки пакетов адрес назначения, а указываем на вкладке Extra его тип: local — принадлежащий одному из интерфейсов маршрутизатора. То есть под правило проброса портов будут попадать все пакеты, отправленные на адрес любого интерфейса маршрутизатора и на порт 21.

На вкладке Action в поле To Ports можно указать 21 порт. У нас работало и с указанием порта, и без него.

Второе правило — srcnat — точно такое же, как в остальных примерах.

Во всех случаях правила настройки NAT мы также поднимали выше общего правила маскарадинга.

Итоги

Повторим, что мы проверили все эти способы настройки на своей конфигурации и они рабочие. Файлы закачиваются и скачиваются:

  • с компьютеров за NAT (из внешней сети),
  • с локальных компьютеров внутри сети,
  • с мобильных устройств, подключенных к FTP-серверу по Wi-Fi к роутерам в локальной сети,
  • с мобильных устройств, подключенных к FTP-серверу по 3G.

Для чего это нужно?

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

  • Удаленному рабочему столу по rdp
  • К локальному ftp или web серверу
  • Для доступа к ip камере
  • для доступа к видеорегистратору
  • Доступ к другим ресурсам, находящимся внутри сети.

Настройка проброса одного порта

Для начала подключитесь к Mikrotik через winbox. Затем перейдите на вкладку IP-Firewall-NAT

Нажмите на синий плюсик в верхнем меню вкладки. И заполняем необходимые настройки. Первым делом заполняем вкладку General. На рисунке показаны минимальные настройки для проброса одного порта, например, нам нужно настроить подключение к rdp серверу через Mikrotik.

Chain-канал приемник, есть два параметра srcnat-из локальной сети в интернет и dstnat из интернета в локальную сеть. Нам нужно dstanat

Src. Address — адрес с которого принимать запрос, например мы хотим разрешить подключение только с одного адреса, тогда нам нужно прописать в этом поле этот адрес. Если ничего не указано, то запросы будут приниматься со всех адресов

Читайте также:  Как крепить витую пару с тросом

Dst. Address— адрес назначения (всегда ip маршрутизатора).

Protocol Обязательное поле, указываем протокол работы, http, udp и т.д.

Src.Port Порт источника с которого идет запрос, для нас это не важно

Dst.Port обязательный параметр, указывает на каком порту роутер будет принимать запрос, здесь может быть указан абсолютно любой, например для rdp не обязательно указывать 3389, для безопасности лучше указать другой порт, например 33389.

Any.Port объединяет два предыдущего параметра, если здесь будет что то указано, то это скажет маршрутизатору что src и dst порт равен указанному.

In.Interface интерфейс на котором настроен внешний ip адрес Микротика

Out. Interface – интерфейс подключения компьютера, на который идет проброс, заполнять необязательно

Более тонкие настройки, которые редко используются

In.Interface List, Out. Interface List принимает значение all т.е. использовать любой интерфейс, в принципе то же самое, что если не заполнять поля In и Out Interface

Packet Mark, Connection Mark, Routing Mark Пробрасывать маркированные пакеты, маркировка происходит на вкладке firewall/mangle.

Connection Type Пакет относится к определенному типу соединения, включенному на закладке Firewall/Service Ports, sip, ftp и т.д.

Обратите внимание, что перед полем можно поставить восклицательный знак, это означает отрицание

Данные настройки означают, что будут приниматься запросы на все порты кроме 3389.

После заполнения всех необходимых полей переходим на вкладку Action.

Action – действие которое нужно выполнить, в нашем случае это или dst-nat или netmap, отличие рассмотрим ниже, я ставлю netmap как более новый и улучшенный.

To Address – ip локального компьютера на который идет проброс

To Ports – Порт на котором работает сервис, например для rdp 3389, для ftp 21. Если dst port на вкладке general совпадает с данным параметром, то можно это поле не заполнять

После всех настроек нажимаем кнопку «ОК» И во вкладке NAT появится новое правило, если все сделано правильно, то все должно работать.

Проброс диапазона портов

Если на маршрутизаторе Микротик надо сделать проброс не один, а несколько портов на локальный компьютер, то в качестве Dst.Ports указываем эти значения через запятую.

В этом случае будут приниматься пакеты из диапазона 3389-3391

Можно использовать оператор отрицания

Здесь будут приниматься пакеты в диапазоне с 1 по 3388 и с 3392 по 65536

Если же данного инструмента нам недостаточно, например надо пробросить udp для asterisk в диапазоне с 10000 по 20000, что не совсем удобно сделать вышеуказанными способами, то на помощь нам придет маркировка пакетов, переходим на вкладку firewall-Mangle.

нажимаем на плюс добавить правило. И заполняем необходимые поля

Chain – цепочка, может принимать следующие параметры

PREROUTING — Маркирует пакет до принятия решения о маршрутизации.

INPUT — Маркирует пакет, предназначенный самому хосту.

FORWARD — Маркирует транзитные пакеты.

OUTPUT — Маркирует пакеты, исходящие от самого хоста.

POSTROUTING — Маркирует все исходящие пакеты, как сгенерированные самим хостом, так и транзитные.

Нам нужно промаркировать пакет до того как он будет обработан правилами роутера, выбираем prerouting

Все остальные поля идентичны полям из правила NAT, только в Dst.Port уже можно указать диапазон.

Затем переходим на вкладку Action

Action ставим маркировку пакетов, mark packet

New Packet Mark – название маркировки, вводим удобное имя.

После чего нажимаем кнопку «ОК»

Теперь переходим во вкладку NAT и добавляем новое правило

Выбираем только канал приемник Chain dstnat и пункт Packet Mark, который создали выше. Затем переходим на вкладку Action

Указываем действие netmap или dst-nat

To Adresses ip локального компьютера

Если хотим перенаправлять диапазон порт в порт, то поле To Ports не заполняем, если нужно перенаправлять с диапазона на один порт, то в To Ports указываем нужное значение.

Проброс всех портов и всех протоколов на локальный ip

Иногда нужно пробросить все порты и все протоколы на локальный ip, в этом случае нужно использовать netmap. По-простому, netmap это маршрутизация сеть в сеть. Работает так же как DMZ на домашних роутерах типа dlink или tplink.

Для настройки также заходим в NAT, Нажимаем добавить правило и заполняем поля как показано на рисунке

Выбираем только канал dstnat, после чего переходим на вкладку Action

Здесь Action ставим netmap и указываем адрес назначения

Все. Теперь все запросы на внешний ip будут перенаправляться на указанный локальный ip.

Обучающий курс по настройке MikroTik

Нужно разобраться с MikroTik, но не определились с чего начать? В курсе «Настройка оборудования MikroTik» все по порядку. Подойдет и для начала работы с этим оборудованием, и для того, чтобы систематизировать знания. Это видеокурс из 162 уроков и 45 лабораторных работ, построен на официальной программе MTCNA. Проходить можно, когда удобно и пересматривать по необходимости – материалы курса выдаются бессрочно. Также есть 30 дней на личные консультации с автором. На пробу выдают 25 уроков бесплатно, заказать их можно на странице курса.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Оцените статью
Добавить комментарий