Ошибка загрузки / выгрузки файла с использованием VirtualBox

Я использую VirtualBoxubuntu 14.04 на нем в качестве клиента у меня есть версия командной строки Ubuntu в качестве сервера в качестве файлового хоста. Я могу подключиться - Аутентифицировать - и загрузить / загрузить файл на / с сервера, используя put $FILE или жеget $FILE но это не удается во время загрузки / выгрузки. Отображается следующее сообщение об ошибке: для обоих

ftp: bind: Address already in use

Есть ли способ сдвинуть порты VirtualBox или ftp для проверки моей тестовой среды?

Я изменил свой порт сервера:

sudo nano /bin/vsftpd.conf
listen_port=2121

Как изменить клиента для вызова на назначенном порту, а не по умолчанию?

1 ответ

Решение

Ну, это не совсем ответ, но комментарии слишком короткие...

Я думаю, что не совсем ясно говорил о "вторичном порте". Ftp использует два порта:

  1. порт команды (или порт прослушивания), по умолчанию 21.
  2. порт данных (по умолчанию 20).

Командный порт, безусловно, свободен, и поэтому вы можете подключаться и проверять подлинность, а также вводить команды get и put. Но при переходе на другое соединение на порт данных открывается другое соединение, и это не удается. Итак, вы должны проверить (и, возможно, изменить) порт данных, а не командный порт.

Проблема еще сложнее, потому что у ftp есть два режима:

  1. "Пассивный" режим, в котором используются порты по умолчанию.
  2. "Активный" режим, в котором согласовываются порты.

Вот почему я настоятельно рекомендую вам попробовать переводы в пассивном режиме (это не по умолчанию). Любой клиент ftp, такой как Filezilla или команда терминала ftp, имеет эту опцию.

Другие вопросы по тегам