このスレッドはクローズされています。記事の閲覧のみとなります。
FTP接続でエラー |
|
- æ¥æï¼ 2005/12/19 20:28
- ååï¼ KC
- はじめまして。
FC4、vsftpdでFTPサーバを立てているのですが、 WAN側からの接続の際に以下のエラーが出ます。 (ログはFFFTPでのログ)
---------------------------------------- ホスト XXXXXXXXXXXXXX を探しています. ホスト XXXXXXXXXXXXXX (xx.xxx.xxx.xx (21)) に接続しています. 接続しました. 220 FTP server >USER xxxxx 331 Please specify the password. >PASS [xxxxxx] 230 Login successful. >XPWD 257 "/" >TYPE A 200 Switching to ASCII mode. >PORT 10,104,2,143,6,87 200 PORT command successful. Consider using PASV. >NLST -alL 425 Failed to establish connection. コマンドが受け付けられません. ファイル一覧の取得を中止しました. ファイル一覧の取得に失敗しました. -----------------------------------------
ユーザ名とパスワード応答は返ってくるのですが、 ファイル一覧の取得ができません。
vfstpd.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
idle_session_timeout=600
data_connection_timeout=60
ascii_upload_enable=YES ascii_download_enable=YES
ftpd_banner=FTP server
chroot_local_user=YES chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
ls_recurse_enable=YES use_localtime=YES pam_service_name=vsftpd userlist_enable=YES listen=YES tcp_wrappers=YES xferlog_std_format=NO log_ftp_protocol=YES pasv_promiscuous=NO -----------------------------------------
ルータでは20、21をポートマッピングしています。
クライアント側の問題なのか、サーバ側の問題なのか 切り分けができずに困っています。
何かわかる事があれば助言お願いします。
|
■ コンテンツ関連情報
Re: FTP接続でエラー ( No.1 ) |
|
- æ¥æï¼ 2005/12/19 21:46
- ååï¼ 武蔵
- passiveモードをオフにしてみたら如何でしょうか?
|
Re: FTP接続でエラー ( No.2 ) |
|
- æ¥æï¼ 2005/12/20 08:51
- ååï¼ KC
- pasv_promiscuous=NO によって
オフになっているかと思うのですが。
これではオフにはならないとの事ですか?
|
Re: FTP接続でエラー ( No.3 ) |
|
- æ¥æï¼ 2005/12/20 15:44
- ååï¼ KC
- >USER xxxxx
331 Please specify the password. >PASS [xxxxxx] 230 Login successful.
上記より制御コネクションは張れており、データコネクションを 張る段階で失敗している事から判断し、恐らくvsftpdで PASVをサポートする事によって解決する可能性があるかと 思うのですが、その場合は pasv_promiscuous=YES とするのみで、 FWやルータ側に設定変更の必要はあるでしょうか。
|
Re: FTP接続でエラー ( No.4 ) |
|
- æ¥æï¼ 2005/12/20 17:17
- ååï¼ 管理者
- クライアント側のファイアウォールが問題となっていませんか?
サーバ側で(20・21)をマッピングしてもクライアント側のファイアウォールによって遮断される場合があります。 クライアント側でのポートは(20・21)で通信するものではない事に注意してください。
ではなぜ、USER名とパスワード等が通るかというとクライアントからサーバの21番に向けた制御コネクションで行われています。 この後、NLST -alLの結果はサーバの20番を通してクライアントの任意のポートに返ってきます。 これがネックとなってファイル一覧が表示されない理由です。(もちろん、PUTやGETも同様) (クライアント側ではサーバからアクセスにきたポートを開ける必要があります。(ポート番号はある範囲らしいですが調べてません))
予断ですがPASVモードとは、セッションを確立する向きが違う事です。 通常(ポートモードまたはアクティブモードと言う)はデータコネクションはサーバからクライアントに向けてですが PASVはデータコネクションはクライアントからサーバの任意のポート番号(※)に向けて接続します。 (※:PASVは、制御コネクション返却時にサーバが指定した任意のポート番号を返却します)
今度は、PASVにした時の問題はサーバー側のポート番号が限定できない(ある範囲を開けなくてはいけない事です。)
KCさんが今はまっているのは前者の件で、クライアント側のファイアウォールを無効にすればファイルリストが取得できます。 (逆を言えば、クライアント側のファイアウォールのOUTに対して制限がなければPASVモードにしてサーバ側のある範囲のポートを開ければ通信可能になります。)
書いている内にややこしくなってしまいましたが、簡単にいうと以下になります。 ・PASVを無効にした場合はクライアント側のポート範囲を開ける ・PASVを有効にした場合はサーバ側のポート範囲を開ける
|
Re: FTP接続でエラー ( No.5 ) |
|
- æ¥æï¼ 2005/12/20 20:19
- ååï¼ KC
- ご返信ありがとうございます。
できれば、ご指示いただいた後者の
・PASVを有効にした場合はサーバ側のポート範囲を開ける
を検討したいのですが、この場合はFC4のFWと ルータのポートの両方で共通のポートを開放する 必要があるという事でしょうか。
また、開放すべきポートの範囲などは どこかWEBに掲載されているものなのでしょうか。 ※調べてはみましたが、明確に範囲が記載してある ページがなかなか見つからず困っています。
お手数をおかけしますが、数日間この事象から 抜け出せずにいるため、どうぞよろしくお願いします。
|
■ その他