Проблема с FTP

Раздел для тех, кто начинает знакомиться с MikroTik
Правила форума
Как правильно оформить вопрос.
Прежде чем начать настройку роутера, представьте, как это работает. Попробуйте почитать статьи об устройстве интернет-сетей. Убедитесь, что всё, что Вы задумали выполнимо вообще и на данном оборудовании в частности.
Не нужно изначально строить Наполеоновских планов. Попробуйте настроить простейшую конфигурацию, а усложнения добавлять в случае успеха постепенно.
Пожалуйста, не игнорируйте правила русского языка. Отсутствие знаков препинания и неграмотность автора топика для многих гуру достаточный повод проигнорировать топик вообще.

1. Назовите технологию подключения (динамический DHCP, L2TP, PPTP или что-то иное)
2. Изучите темку "Действия до настройки роутера".
viewtopic.php?f=15&t=2083
3. Настройте согласно выбранного Вами мануала
4. Дочитайте мануал до конца и без пропусков, в 70% случаев люди просто не до конца читают статью и пропускают важные моменты.
5. Если не получается, в Winbox открываем терминал и вбиваем там /export hide-sensitive. Результат в топик под кат, интимные подробности типа личных IP изменить на другие, пароль забить звездочками.
6. Нарисуйте Вашу сеть, рисунок (схему) сюда. На словах может быть одно, в действительности другое.
Ответить
chizhik_den
Сообщения: 0
Зарегистрирован: 21 сен 2017, 07:35

Доброго всем времени суток!

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

Итак возникла необходимость организовать в офисе резервный канал Интерента, после недолгих раздумий выбор пал на Mikrotik, как на оптимальный с точки зрения цена-качество-функционал. С первоначальной настройкой и резервным каналом разобрался быстро, благодаря найденным на просторах сети инструкциям. Настраивал через WinBox. Но тут засада обнаружилась там, откуда не ждал. Помимо рабочих станций, потребляющих Интернет с целью веб-серфинга, в организации имеется сервер, на котором поднят FTP (IIS), к нему подключаются для обмена файлами планшеты торговых представителей с Агент+, помимо этого, этот же сервер посредством штатного виндового ftp-клиента отправляет бэкапы SQL на удаленный FTP-сервер. На старом добром TP-Link вся эта конструкция успешно функционировала. На Микротике я пробросил порт 21 из внешних интерфейсов на IP сервера и создал правило masquerade для переправки ftp-пакетов из локальной сети на сервер, когда агентские планшеты стучаться туда по внешнему адресу, сами находясь в офисном Wi-Fi. С подключением извне проблем нет: подключиться можно и в активном, и в пассивном режиме, а вот изнутри к внешним FTP подключиться можно только в пассивном. В активном режиме соединение устанавливается, проходит авторизация и все повисает. Подключиться не может ни встроенный ftp.exe (у него вообще нет пассивного режима), ни FileZilla, ни Total Commander, когда они настроены на активное подключение. Знаю, что при активном FTP после установки управляющего соединения через порт 21, клиент передает серверу рандомный порт из диапазона и тот уже цепляется на него своим портом 20 для передачи данных. Насколько я понимаю именно это подключение и не проходит через Микротик, но как это исправить нигде информации найти я не смог. Отсюда вопрос № 1: Как обучить Микротик переправлять пакеты данных от удаленного сервера к клиенту в локальной сети? Экспериментальным путем обнаружил, что если на вкладке IP->Firewall->Service Ports строку ftp сделать disable, активное подключение изнутри наружу начинает работать. Но найти какое-либо понятное мне описание, что это за "Service Ports", какое их предназначение и к чему приводит их включение-отключение я найти опять же не смог. Вопрос № 2: Для чего нужна вкладка Service Ports и каково ее влияние в моей ситуации? Но даже после отключения строки "ftp" в Service Ports активный режим заработал неполноценно: Total Commander подключается и отправляет/получает файлы нормально, а вот из командной строки встроенным ftp-клиентом отправить файлы не удается: соединение устанавливается, но через несколько секунд ftp.exe выдает "bye" и соединение обрывается (а именно с его помощью у меня происходит отправка резервных копий БД). Из этого делаю вывод, что отключение ftp в Service Ports - есть какая-то полумера, а не решение.

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


seregaelcin
Сообщения: 176
Зарегистрирован: 27 фев 2016, 17:12

Если сервер поднят на файлзиле, то тогда так - инет ходит через pppoe интерфейс pppoe-out1

/ip firewall nat
add action=dst-nat chain=dstnat comment=FTP dst-port=20-21 in-interface=pppoe-out1 protocol=tcp to-addresses=192.168.1.35 to-ports=20-21
add action=dst-nat chain=dstnat dst-port=50000-50020 in-interface=pppoe-out1 protocol=tcp to-addresses=192.168.1.35 to-ports=50000-50020

/ip firewall service-port
set ftp disabled=yes
set tftp disabled=yes
set irc disabled=yes
set h323 disabled=yes
set sip disabled=yes
set pptp disabled=yes
set udplite disabled=yes
set dccp disabled=yes
set sctp disabled=yes

порты 50000-50020 надо на серваке вписать, 192.168.1.35 - адрес сервака


Обладатель Mikrotik RB2011UAS-2HnD-IN
chizhik_den
Сообщения: 0
Зарегистрирован: 21 сен 2017, 07:35

Это все касательно подключения из вне к моему серверу, а у меня с этим как раз все норм. Проблема с подключением компов из локальной сети к FTP-серверам в Интернете. Причем, только активным.

И хотелось бы все-таки понять, что такое эти "Service Ports", для чего нужны и в каких случаях их требуется включать/отключать. Думаю, это не последний мой Микротик, а я привык понимать как работают мои устройства.


mafijs
Сообщения: 533
Зарегистрирован: 03 сен 2017, 03:08
Откуда: Marienburga

chizhik_den писал(а):Эчто такое эти "Service Ports", для чего нужны и в каких случаях их требуется включать/отключать.

Для подключения прямо к микротику по этим портам.


chizhik_den
Сообщения: 0
Зарегистрирован: 21 сен 2017, 07:35

ОК, с этим понятно. Остается вопрос с активным ftp

Вот, что у меня происходит при попытке активного подключения к удаленному FTP-серверу:

Код: Выделить всё

ftp> open 185.58.205.153
Связь с 185.58.205.153.
220 ProFTPD 1.3.5 Server (ProFTPD server) [185.58.205.153]
Пользователь (185.58.205.153:(none)): *имя_пользователя*
331 Необходим пароль для пользователя *имя_пользователя*
Пароль:
230 Пользователь *имя_пользователя* подключен
ftp> ls
200 Команда PORT успешно обработана
425 Невозможно создать соединение данных: В соединении отказано
ftp>


При этом если в Микротике включить логирование входящих пакетов с удаленного порта 20, будет видно, что после каждой команды ls с 20 порта удаленного сервера приходит пакет, а в логе делается запись:

Код: Выделить всё

dstnat: in:ether1 out:(none), src-mac a6:3c:31:00:5f:7e, proto TCP (SYN), 185.58.205.153:20->*мой_ip*:50649, len 60

Номер порта на моей стороне, как и положено, выдается рандомно из диапазона и каждый раз меняется.
Таким образом, все что мне нужно, это объяснить Микротику, что пакеты, приходящие с порта 20 удаленного FTP-сервера нужно переправить на такой-то порт компа в локалке, который их ждет. НО КАК???
Блин. Понимаю, что нужно прописать где-то какую-то строку, но как и где это сделать в Микротике понять не могу :ny_tik:


Ответить