Я знаю, что этот вопрос задавался много раз в Интернете, и поиск в Google вызвала множество сообщений, но ни одна из них не помогла, и все они очень расплывчаты и не конкретны, поэтому я хочу наконец получить определенный ответ там в Интернете.
По сути, у меня Ubuntu работает с proftpd как часть пакета xampp. Соединения внутри сети в порядке.
Клиенты внутри сети могут устанавливать соединение с сервером, аутентифицировать себя и получать списки каталогов и все такое прочее.
Клиенты за пределами сети могут установить соединение, аутентифицировать себя, но застрять в Retrieving Directory Listing...
и время ожидания.
Status: Connecting to ***.***.***.***:21...
Status: Connection established, waiting for welcome message...
Status: Insecure server, it does not support FTP over TLS.
Status: Server does not support non-ASCII characters.
Status: Connected
Status: Retrieving directory listing...
Command: PWD
Response: 257 "/" is the current directory
Command: TYPE I
Response: 200 Type set to I
Command: PASV
Response: 227 Entering Passive Mode (165,228,195,88,240,255).
Command: MLSD
Error: The data connection could not be established: ETIMEDOUT - Connection attempt timed out
Error: Connection timed out after 20 seconds of inactivity
Error: Failed to retrieve directory listing
Я знаю, что это как-то связано с формой соединения Active vs Passive. Я не могу понять, какой я хочу или как заставить это работать.
Ранее у меня был FTP-сервер, работающий в Windows с использованием FileZilla Server. Я столкнулся с той же пассивно-активной проблемой и смог решить ее, используя один порт . Многие другие решения в Интернете устанавливали пассивный режим и переадресовывали несколько портов (например, 60000-65534), но, учитывая, что в прошлом я мог заставить его работать только с 21 в качестве входящего соединения, я мог бы иметь возможность сделай это снова.
Мой файл proftpd.conf добавлен здесь -> pastebin.com/YSgKw1Jk
Любая помощь очень ценится. Заранее спасибо!