Web制作

【ubuntu】FTPサーバー立てたけどディレクトリリスト取得表示に失敗した時の対処方法

Written by o-saka

ubuntuサーバーにFTP立てたけど接続は出来るのにディレクトリリストの取得・表示ができなかった時の原因と対処方法の備忘録です。

 

症状

エラー: ディレクトリ リスト表示の取り出しに失敗しました

(mac FileZillaのメッセージログ)

原因

FTPにパッシブモードを使用している際に、ポートがTCP/21番のみしか解放されておらず、データコネクションに必要なポートが解放されていないため、接続はできるがディレクトリリストが取得できないといった症状が発生している。

基本的にFTPでは制御用に21番ポートが利用され、データ転送用に20番ポートが利用されます。しかし、パッシブモードの場合、クライアント側から接続するデータ転送用のポートは毎回ランダムで決まるのが特徴です。

FTPのアクティブモードとパッシブモードの違いを徹底解説|ITトレンド より引用

設定方法

vsftpd.confの編集

vsftpd.confにて、パッシブモードで使用するポート番号の指定をします。今回は範囲を10100〜10110とします。

ターミナル

sudo vim /etc/vsftpd.conf

/etc/vsftpd.conf

pasv_enable=YES
pasv_min_port=10100
pasv_max_port=10110

ファイアウォールの設定

ファイアウォールにて10100〜10110ポートを解放します。

ターミナル

sudo ufw allow from any to any proto tcp port 10100:10110

下記コマンドで確認できます。

ターミナル

sudo ufw status

FTPを再起動します。

ターミナル

sudo systemctl restart vsftpd

無事ディレクトリリストの取得表示に成功しました。

 

 

 

この記事を書いた人

o-saka(@abiko41)

フリーランスでWEB作ったりロゴ作ったりしてます。
お仕事のご依頼等は下記フォームより承っております 。お気軽にお問い合わせください。

お問い合わせ