投稿日:2005年12月21日 作成鷹の巣

No.19968 OSはFC4、vsftpdでFTP転送不可。



OSはFC4、vsftpdでFTP転送不可。

No.19968 投稿時間:2005年12月21日(Wed) 10:07 投稿者名:KC URL:

動的IP、ルータはAterm WD701CVで
OSは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
-----------------------------------------




そこで、PASVを有効にすれば事象が変化するかと思い、
コンフィグに以下を追加・修正しました。
pasv_min_port=40000
pasv_max_port=40030
pasv_promiscuous=YES

また、ルータにて以下のポートマッピング設定を追加しました。
・変換対象プロトコル:TCP
・変換対象ポート:40000-40030
・宛先アドレス:ローカルIP

この状態にて、再度FFFTPでWAN側からPASVを有効にしてアクセスした際の
ログが以下になります。

----------------------------------------
230-230 Login successful.
230
>>CD F:\
>XPWD
257 "/"
>TYPE A
200 Switching to ASCII mode.
>PASV
227 Entering Passive Mode (xxx.xxx.xxx.xxx,234,116)
ダウンロードのためにホスト xxx.xxx.xxx.xxx (60020) に接続しています.
接続しました.
>LIST
150 Here comes the directory listing.
226 Directory send OK.
ファイル一覧の取得は正常終了しました. (195 Bytes)
>CWD public_html
250 Directory successfully changed.
>XPWD
257 "/public_html"
>TYPE A
200 Switching to ASCII mode.
>PASV
227 Entering Passive Mode (xxx.xxx.xxx.xxx,234,117)
ダウンロードのためにホスト xxx.xxx.xxx.xxx (60021) に接続しています.
接続しました.
>LIST
150 Here comes the directory listing.
226 Directory send OK.
ファイル一覧の取得は正常終了しました. (0 Bytes)
>CDUP
250 Directory successfully changed.
>XPWD
257 "/"
>CWD public_html
250 Directory successfully changed.
>XPWD
>CWD public_html
257 "/public_html"
>XPWD
550 Failed to change directory.
>PWD
>CWD public_html
257 "/public_html"
>PWD
257 "/public_html"
550 Failed to change directory.
>TYPE A
257 "/public_html"
>PASV
200 Switching to ASCII mode.
アドレスが取得できません.
ファイル一覧の取得を中止しました.
ファイル一覧の取得に失敗しました.
227 Entering Passive Mode (xxx.xxx.xxx.xxx,234,119)
>PWD
257 "/public_html"
>TYPE A
200 Switching to ASCII mode.
>PASV
227 Entering Passive Mode (xxx.xxx.xxx.xxx,234,120)
アップロードのためにホスト xxx.xxx.xxx.xxx (60024) に接続しています.
接続しました.
>STOR /public_html/index2.htm
150 Ok to send data.
226 File receive OK.
アップロードは正常終了しました. (1 Sec. 18 B/S).
>TYPE A
200 Switching to ASCII mode.
>PASV
227 Entering Passive Mode (xxx.xxx.xxx.xxx,234,121)
ダウンロードのためにホスト xxx.xxx.xxx.xxx (60025) に接続しています.
接続しました.
-----------------------------------------

なぜか、60000番台のポートでコネクションが
張られようとしています。

vsftpd.confに
pasv_min_port=40000
pasv_max_port=40030 と追加してvsftpdを再起動し、

ルータに
・変換対象プロトコル:TCP
・変換対象ポート:40000-40030
・宛先アドレス:サーバのローカルIP

としているのですがどこに誤りがあるのでしょうか?

また、60000番台を任意に開放した覚えはない(FCのFW、ルータ共に)のに、
なぜ60000番台でコネクションが張れてしまう場合があるのか、全くわかりません。
(60021とか60106ぐらいまでは成功するように見え、60108などは失敗します)

何か助言をいただければと思います。


FFFTP の Q&A

No.19969 投稿時間:2005年12月21日(Wed) 11:18 投稿者名:Reboot URL:

長々と書いておられますが、NLST -alL が使えないFTPはありますね。
proftpd なんかもそうですね。

FFFTPの設定、高度のところで、LIST コマンドでファイルの一覧を取得
に変えて、一度 FFFTP を終了し、また立ち上げて試してみてください。

これは2回目でそうされたのかな。
後は FFFTP の Q&A が参考になると思います。
http://www2.biglobe.ne.jp/~sota/ffftp-qa/qa-6.html


LIST コマンドでファイルの一覧を取得

No.19970 投稿時間:2005年12月21日(Wed) 11:26 投稿者名:KC URL:

> 長々と書いておられますが、NLST -alL が使えないのでは。
LISTコマンドとNLST -alL の兼ね合いの問題でない事は確認しています。

> proftpd なんかもそうですね。
proftpd の場合は NLST -alL は使えないのですか?


ftpd そのものに問題があるような。

No.19971 投稿時間:2005年12月21日(Wed) 12:45 投稿者名:松元 URL:

ftpd そのものに問題があるような。
http://www.aconus.com/~oyaji/bbs/past/0002/B0000766.html
でpasv_min_portを設定してもうまく出来ないらしき事書いてあります。

60000でlistが動作したのならルーターはパッシブサーバ対応しているのでしょう。
OPT や BA8000 などは対応しているのでルーターに特別設定は不要です(21ポートのみで良い)


個別の行で設定する必要があります。

No.19972 投稿時間:2005年12月21日(Wed) 12:57 投稿者名:KC URL:

> http://www.aconus.com/~oyaji/bbs/past/0002/B0000766.html
> でpasv_min_portを設定してもうまく出来ないらしき事書いてあります。

上記では pasv_min_port=55000/pasv_max_port=60000 と、
一行表示で設定しているためであると思われます。
pasv_min_port=55000
pasv_max_port=60000
のように個別の行で設定する必要があります。


> 60000でlistが動作したのならルーターはパッシブサーバ対応しているのでしょう。

恐らくそうだと思います。

> OPT や BA8000 などは対応しているのでルーターに特別設定は不要です(21ポートのみで良い)

ではFC側のFWで20、21、40000-40030 を許可し、
ルータで20、21をポートマッピングするのみでよいとの解釈で良いでしょうか。
ちなみに OPT や BA8000 とはルータの機種名か何かですか?


ルータでは20番は不要です。21のみポートマッピングする。

No.19973 投稿時間:2005年12月21日(Wed) 16:06 投稿者名:松元 URL:

> ではFC側のFWで20、21、40000-40030 を許可し、
> ルータで20、21をポートマッピングするのみでよいとの解釈で良いでしょうか。

ルータでは20番は不要です。21のみポートマッピングする。
何故か皆さん20番を開けたがりますが、必要ありません。
fcのiptableで特に止めなければ動くと思います。(私はFWはルーターだけでサーバーには入れていません)
問題の40000~40030の問題が解決していないのでそれ以上は不明。ログにでも何かありませんか?

> ちなみに OPT や BA8000 とはルータの機種名か何かですか?

Yes 1~2年前まで自宅サーバーでもっとも定評があったルーターです。(今は?)


NEC製ルータ固有の問題みたいです。

No.19977 投稿時間:2005年12月22日(Thu) 10:05 投稿者名:KC URL:

> 問題の40000~40030の問題が解決していないのでそれ以上は不明。ログにでも何かありませんか?

すみません。使っているNEC製ルータ固有の問題みたいです。
勝手に変換してクライアントに通知するらしいです。

> Yes 1~2年前まで自宅サーバーでもっとも定評があったルーターです。(今は?)

なるほど。調べているうちにその名前を目にしました。


もうちょっと設定をいじってみます。


目次掲示板過去ログ目次▲頁先頭