Добрый день!
Потестировал FTP на прошивке 1.08, у меня отлично работает, и активный и пассивный режим, и при локальном доступе и при доступе к NAS из интернет. Все пишет, все читает. Права доступа пользователей учитываются.
Единственное, что осталось непонятным для меня, это то как работает NAS в пассивном режиме в связке с маршрутизатром D-Link DIR-320. Это коненчо больше относится к настройке DIR-320, но поскольку производитель один, задам свой вопрос здесь, наверняка кто-нибудь сможет грамотно разъяснить:
При настройке доступа к FTP DNS-323 из интернет, я на своем маршрутизаторе DIR-320 (кстати стоит родная прошивка v1.10) перенаправил на DNS-323 только 21 порт (стандартный порт FTP). В моем понимании, для работы в пассивном режиме, необходимо также перенаправлять порты для передачи данных FTP. По умолчанию в DNS-323 используются порты 55536-55663. Эти порты нужны для получения данных: получение списков, загрузка и выгрузка файлов и т.п. В пассивном режиме эти порты должны быть доступны для принятия входящих соединений от клиентов. Однако, доступ к FTP DNS-323 в пассивном режиме заработал и без дополнительного перенаправления портов. Почему маршрутизатор перенаправляет и эти порты на FTP сервер?
Также не понятно следующее: в пассивном режиме FTP сервер передает клиентам помимо номера открытого порта и свой IP:
Код:
-> REST 0
<- 350 Restarting at 0
-> PASV
<- 227 Entering Passive Mode (94,41,ХХХ,ХХХ,216,253)
-> LIST -la
<- 150 Accepted data connection
<- 226-Options: -a -l
<- 226 3 matches total
откуда NAS знает внешний IP локальной сети (IP WAN порта маршрутизатора, который в моем случае предоставляется провайдером динамически), почему он выдает не свой локальный IP?
Заранее спасибо за разъяснения.
Также выявлена следующая непонятная ситуация с FTP:
Cоздал два FTP соединения с одним DNS-323, доступ через интернет с двух разных IP. Один клиент создает папки и записыват файлы на FTP. Другой клиент в этот момент просматривает папку в которой создаются подпапки и в которую копируются файлы - постоянно обновляет содержимое папки (команда LIST -la), однако никаких изменений не видит. Увидеть новые файлы и папки удается только после отключения и повторного подключения к FTP серверу. Тоже самое происходит при удалении файлов и папок. При получении содержимого папки второму клиенту выдаются даже те файлы которые были удалены в это время первым клиентом. Соответственно при попытке зайти в удаленную папку или скопировать удаленный файл выдается ошибка. Файловая структура правильно перечитывается только после отключения и повторного подключения к FTP серверу.
Кстати подумал, но пока не проверил что будет если изменять файловую структуру по самбе а отслеживать изменения по FTP. Думаю будет тоже самое...
Мне кажется FTP сервер не должен так работать? Если это норма, то объясните пожалуйста мне логику, почему он так работает?
Еще одна проблема, связаная с FTP, с пользователями и с настройками NAS'а мною описана
здесь