Страница 1 из 1

Filezilla за NAT

Добавлено: 2015-02-09 14:29:36
logout_90
Доброго времени суток, уважаемые форумчане!
Есть сервер FreeBSD 10.1, который работает в качестве шлюза.
Настроил на нем WAN failover (скриптом). Все работает корректно, даже та файлзилла, о которой речь.
Есть проблема только в passive mode фтп. Вот когда 1 канал отваливается и подключается 2ой канал, падает пассивный режим, поскольку для него необходимо ручками указать файлзилле external ip, который меняется. Вследствие чего 1 сервис недоступен из вне (а он ключевой). Можно использовать php страничку, которая вернет external ip, благо файлзилла это умеет. Но хотелось бы сделать пассивку без внешних приблуд. Альтернатива подключаться из дому при падении 1 канала и прописывать вручную ип адрес меня чего то не привлекает.
Возможно, кто нибудь реализовывал похожие вещи? Может быть, есть идеи как в этом случае можно реализовать пассивный режим фтп?

Filezilla за NAT

Добавлено: 2015-02-09 15:31:00
Alex Keda
Ничё не понял...
Если вы каналы скриптом перекидываете, сразу им нужный IP и пропишите

Filezilla за NAT

Добавлено: 2015-02-09 16:03:27
logout_90
Ок, несколько сумбурно. Вобщем, есть где то человек, который хочет подключиться к фтп серверу по ип x.y.z.w, он вбивает этот ип в аресную строку папки вин "ftp://x.y.z.w" и получает ошибку входа в пассивный режим. Причина - запрос от юзера идет на адрес x.y.z.w, а ответ приходит с локального ип адреса 192.168.x.z (Ип адрес файлзиллы локальный)
Решается эта проблема прописыванием в настройках пассивного фтп файлзиллы "использовать кастомный ип адрес" x.y.z.w
Вот тогда клиент получает ответ с нужного ип x.y.z.w и соединение идет нормально.

Отправлено спустя 5 минут 36 секунд:
Вот теперь не знаю как побороть проблему. Использовать фтп прокси? Ковырять пакет (хз каким образом). Wireshark говорит:

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

FTP
.
.
.
Passive IP address: 192.168.30.20 (192.168.30.20)
Passive port: 50012
Здесь соединение не прошло
И

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

Passive IP address: x.y.z.w ( x.y.z.w)
Passive port: 50013
Passive IP NAT: True
Здесь соединение прошло

Отправлено спустя 19 минут 53 секунды:
На просторах интернета увидел такое:
PASV режим — FTP сервер за NAT

В режиме PASV FTP сервер отвечает клиенту своим внутренним ip адресом и портом, чем обрекает клиента на невозможность подключения.

Решение 1. Настройка NAT за слежением соединений FTP для передачи данных. Когда сервер отправляет ответ в пассивном режиме, NAT устройство должно переписывать внутренний адрес сервера и заменять его внешним адресом устройства. Тогда соединение для передачи данных с FTP клиента, поступив на внешний адрес NAT устройства, будет проброшено им на внутренний адрес FTP сервера за NAT.
Похоже, именно мой случай. Вот только как можно "переписывать внутренний адрес сервера и заменять его внешним адресом устройства" во FreeBSD? Не сталкивался с фтп за натом, извините если вопрос реально нубский.

Filezilla за NAT

Добавлено: 2015-02-13 13:43:09
skeletor
Вам нужно пробросить не только порт 21, но и диапазон passive ports. Я ни раз так делал и всё работает. Ну и обязательно, что бы ftp-сервер работал в passive mode.