web-dev-qa-db-ja.com

vsftpdエラーリストディレクトリ

Fedoraインスタンスを備えたAmazon ec2にvsftpdをインストールしましたが、これは最新バージョンですが、エラーが発生しています:CuteFTPの場合:

COMMAND:> PASV 227 Entering Passive Mode (192,168,10,46,14,20)
COMMAND:> LIST
ERROR:> Can’t connect to remote server. Socket error = #10065.
ERROR:> PASV failed, trying PORT.

Filezillaの場合:

Command: PASV Response: 227 Entering Passive Mode (192,168,10,46,14,20)
Command: LIST Error: Connection timed out
Error: Failed to retrieve directory listing.

シェルに接続して、ディレクトリのリストを表示しようとしています。

27
onkar

これとまったく同じ問題が発生しました...これは通常、パッシブモード(かなり一般的)を使用するGUI ftpクライアントにのみ影響します。たとえば、標準のftpコマンドラインツールを使用すると、ftpサーバーに正常にログインしてファイルをアップロードできました。

修正する手順は次のとおりです。

1)/etc/vsftpd.confファイルに次の設定を追加します。

pasv_enable=YES
pasv_min_port=64000
pasv_max_port=64321
port_enable=YES

2)また、状況に応じて、次の構成チャンクのいずれかを/etc/vsftpd.confファイルに追加します(どちらの場合も、パブリックアクセス可能なIPに解決する必要があります)。

a:

pasv_address=<your-static-ip-most-likely-from-elastic-ips>
pasv_addr_resolve=NO

-OR-

b:

pasv_address=<your-publicly-resolvable-Host-name>
pasv_addr_resolve=YES

3)ec2インスタンスのセキュリティグループ構成で、次のカスタムインバウンドtcpルールを追加します。

  • 標準FTPのポート20〜21を有効にする
  • 上記の設定セクションで定義されているようにパッシブポートを有効にします(64000-64321を使用しました)

4)vsftpdサービスを再起動します(Linuxのフレーバーによって異なります)

注:pasvポート範囲は、ファイアウォール、NATの外側から見えるようにする必要があります

詳細情報の参照先:

63
longda

error: failed to retrieve directory listing Amazon ec2の場合、転送モードをactiveに変更するだけで修正できます。

この投稿では、filezillaを使用して簡単に実行する方法を説明しています。

https://nabtron.com/error-while-connecting-to-Amazon-ec2-via-ftp-solution/

17
Nabeel Khan

このスレッドを見てください:

http://www.gosquared.com/liquidicity/archives/936

2
Bucho

バージョンvsftpd-3.0.2-1.el5.x86_64.rpmを使用すると、次の設定に役立ちました。

pasv_enable=YES
pasv_min_port=64000
pasv_max_port=64321
port_enable=YES
pasv_address=<your-static-ip-most-likely-from-elastic-ips>
pasv_addr_resolve=NO

Longdaに感謝します!

2
Alex

私のためのこの仕事。

以下は/etc/vsftpd.confの設定です

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
chroot_local_user=YES
allow_writeable_chroot=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
pam_service_name=ftp
pasv_enable=YES
pasv_min_port=13000
pasv_max_port=13100
port_enable=YES
pasv_address=AWS-IP-Address
pasv_addr_resolve=no

サービスを保存して再起動

$ Sudo service vsftpd restart

セキュリティグループのポートの下で開く

  • custom TCP 20 0.0.0.0/0から
  • custom TCP 21 from 0.0.0.0/0
  • custom TCP 0.0.0.0/0から13000
  • カスタムTCP 0.0.0.0/0から13100

FileZilla FTPクライアントから接続しているときに、以下のエラーが発生する場合があります。

Error:  Connection timed out
Error:  Failed to retrieve directory listing

これを解決するには。

  • Filezillaを開き、[編集]-> [設定]に移動します
  • [接続]-> [FTP]をクリックします:アクティブを選択します
  • [接続]-> [FTP]-> [アクティブモード]をクリックします:[オペレーティングシステムに外部IPアドレスを要求する]を選択します
  • [接続]-> [FTP]-> [パッシブモード]をクリックします。[アクティブモードにフォールバック]を選択し、[OK]を押します。

もう一度FTPサイトに接続してみてください。

2
Pramod Waikar

可能であれば、パッシブモードを使用します。 Buchoリンク先の記事で述べたように、PASVモードのポート範囲を定義し、EC2セキュリティグループでその範囲を開くだけです。

0
TheDeveloper