CentOS5.2
vsftpd2.0.5
の環境で、
まず、pasvモード設定、chroot設定、ユーザーの限定、anony不許可、ls_recurse_enable=YES
などの設定をし、通常のFTPで接続できることを確認しました。
その後、ssl_enable=YES と設定をして、ログインは成功するのですが、ファイルリスト取得ができません。(LISTコマンドの応答がありません。)
クライアントは、FileZilla、NextFTPなどいろいろ試し、ファイルリスト取得コマンドも、LIST/NLISTなどNextFTPで設定できるパターンは試しました。
FileZilla2.x系なら、という記述を見つけて入れてみましたが、ダメでした。
解決のヒントを教えてください。
---vsftpd.conf(コメントは削っています。)
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
ls_recurse_enable=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
userlist_deny=NO
pasv_promiscuous=YES
pasv_address=XXX.XXX.XXX.XXX
pasv_max_port=20010
pasv_min_port=20000
use_localtime=YES
#FTPS
ssl_enable=YES
rsa_cert_file=/etc/pki/tls/certs/vsftpd.pem
FTP の LIST コマンドの結果はデータコネクションで帰ってくる。
ログイン自体はできているようだからコントロールコネクションは接続されているのだろう。
ファイヤーウォールやルーターの設定を疑ってみては?
以下はSSLではないけれど、同様の症状のやりとりです。
ありがとうございます!
いただいたURLをみて、再確認したところ、FW設定でのポート開放がうまくいっていませんでした。
初歩ミスですね。。。
ノーマルの(非暗号化)FTPがPASV接続できたので、ポートはうまく開放されているものと信じてしまっていました。
ありがとうございました!