VirtualBox を使用したファイルのアップロード/ダウンロードが失敗する

VirtualBox を使用したファイルのアップロード/ダウンロードが失敗する

私はVirtualBox ubuntu 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 は 2 つのポートを使用します。

  1. コマンド ポート (またはリッスン ポート)、デフォルトは 21。
  2. データ ポート (デフォルト 20)。

コマンド ポートは確かに空いているため、接続して認証し、get コマンドと put コマンドを発行できます。ただし、転送を実行すると、データ ポートで別の接続が開かれ、この接続は失敗します。そのため、コマンド ポートではなく、データ ポートを確認 (および場合によっては変更) する必要があります。

ftp には 2 つのモードがあるため、問題はさらに複雑になります。

  1. デフォルトのポートが使用される「パッシブ」モード。
  2. ポートがネゴシエートされる「アクティブ」モード。

このため、パッシブ モードで転送を試すことを強くお勧めします (これはデフォルトではありません)。Filezilla などの FTP クライアントや ftp ターミナル コマンドには、このオプションがあります。

関連情報