Я запускаю Ubuntu 12.04 как хост и установил Ubuntu 14.04 в Virtualbox как гостевая ОС. Я установил и настроил VSFTPD на Ubuntu 14.04 и передал virtualbox порт следующим образом: Теперь я использую FileZilla в своем хосте ОС для доступа в гостя к ОС.
Вот данные для входа в систему FileZilla:
Хост: 127.0.0.1
Имя пользователя: hasan
Пароль:-----
Порт: 8181
Теперь я нажимаю кнопку Quickconnect к доступу в гостя OS.
Вход в систему был успехом, но filezilla был неспособен к доступу в гостя OS!.
Вот сообщения:
Status: Connecting to 127.0.0.1:8181...
Status: Connection established, waiting for welcome message...
Response: 220 (vsFTPd 3.0.2)
Command: USER hasan
Response: 331 Please specify the password.
Command: PASS ******
Response: 230 Login successful.
Command: OPTS UTF8 ON
Response: 200 Always in UTF8 mode.
Status: Connected
Status: Retrieving directory listing...
Command: PWD
Response: 257 "/home/hasan"
Command: TYPE I
Response: 200 Switching to Binary mode.
Command: PASV
Response: 227 Entering Passive Mode (10,0,2,15,224,245).
Command: LIST
Error: Connection timed out
Error: Failed to retrieve directory listing
Я не мог зафиксировать это. Какая-либо идея?
Простое перенаправление портов недостаточно для FTP. FTP имеет соединение управления на обычно порте 21, который Вы успешно отобразили для портирования 8181. Но передать файлы или FTP списков каталогов открывает другое соединение. Существует два способа открыть это соединение:
Так или иначе, FTP является ужасным протоколом, если перенаправление портов или брандмауэры включены. Я рекомендовал бы использовать sftp вместо этого, который является поддержкой FileZilla также и которому только нужен сервер SSH с другой стороны (который Вы, вероятно, уже имеете, потому что Вы передаете для портирования 22).