- PR -

VineLinux4.0でFTP接続

投稿者投稿内容
のり
会議室デビュー日: 2007/03/15
投稿数: 12
投稿日時: 2007-03-15 09:40
お世話になっております。
VineLinux4.0でサーバの構築を始めました。
インストール後、FTPで接続をすると
ファイル一覧からダウンロードができませんでした
というメッセージが出てしまいます
FFFTPを使用していますが、設定を「NLST-Rを使って高速に再帰検索」から
「LISTコマンドでファイル一覧を取得」に変更しても直りません。
どのように対処すれば、よろしいのでしょうか?
ご教授お願い致します。

コブラ
ぬし
会議室デビュー日: 2003/07/18
投稿数: 1038
お住まい・勤務地: 神奈川
投稿日時: 2007-03-15 11:16
Passive モードにする、FFFTPのバージョンを何レベルか落とす。
のり
会議室デビュー日: 2007/03/15
投稿数: 12
投稿日時: 2007-03-19 11:10
コブラ様

ご回答ありがとうございます。
遅くなってすみません。

>Passive モードにする、FFFTPのバージョンを何レベルか落とす。
両方やってみましたが、ダメでした。

その後、ファイアウォールを無効にすると正常に取得できましたが、
ファイアウォールを有効にし、FTPを許可にしてもダメでした。

F/A
ぬし
会議室デビュー日: 2006/03/18
投稿数: 312
お住まい・勤務地: Tokyo
投稿日時: 2007-03-19 19:43
本気でサーバ構築スキルをつけたいのなら、
tcpdumpとかwiresharkを使用して何のパケットが
ファイアウォールでブロックされるかを調査されるとよいと思います。

まぁ簡単には、FTPサーバ側はTCP21番を
PC側はTCP20番を通すように設定すれば、Activeモードは動くと思います。

もっと簡単には、FTPのようなセキュリティ的に問題の多いサービスではなくsftpを使用するか、
家庭内でのやり取りに限定し、
IPアドレス単位でファイアウォールを許可設定しておけばいいと思います。

[ メッセージ編集済み 編集者: F/A 編集日時 2007-03-19 19:46 ]
あつしfx
大ベテラン
会議室デビュー日: 2002/04/08
投稿数: 104
お住まい・勤務地: XPできるところ
投稿日時: 2007-03-19 20:28
うちのVine4サーバはiptablesを設定することでftp接続できてます。
Vine 4はデフォルトでiptablesによるファイアウォールを使うようにしてますので、iptablesの説明をしているホームページを参考にすると良いでしょう。

_________________
http://aglabo.com/ @Homepage
http://furukawa-select.com/mt/ @Blog
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2007-03-19 23:20
こんばんわ.
引用:

のりおだすさんの書き込み (2007-03-19 11:10) より:

その後、ファイアウォールを無効にすると正常に取得できましたが、
ファイアウォールを有効にし、FTPを許可にしてもダメでした。


そこまでわかっているなら,
具体的にどのように「ftp を許可した」のかを書くべきでは?
のり
会議室デビュー日: 2007/03/15
投稿数: 12
投稿日時: 2007-03-20 08:52
みなさん、ご回答ありがとうございます。

>具体的にどのように「ftp を許可した」のかを書くべきでは?

現在までに行ったことです。

1インストール時に、ファイアウォールを有効にし、FTP、HTTP、SSHは許可に設定
2デスクトップ→システム管理→セキュリティレベルとファイアウォールの設定より無効に変更
3iptablesの設定を以下のサイトを参考に設定
http://megamix.ddo.jp/vine_setting.html

iptables -P INPUT ACCEPT
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -F
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --sport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --sport 21 -j ACCEPT
iptables -A INPUT -s 192.168.11.0/24 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 192.168.11.0/24 -p tcp --sport 22 -j ACCEPT
iptables -A INPUT -s 192.168.11.0/24 -p tcp --dport 1000 -j ACCEPT
iptables -A INPUT -s 192.168.11.0/24 -p tcp --sport 1000 -j ACCEPT
iptables -P INPUT DROP
/etc/init.d/iptables save
/etc/init.d/iptables restart

結果
1はファイルの一覧取得できず
2は成功
3はファイルの一覧取得できず
 但し、下から3行目の
 iptables -P INPUT DROP
 を行わない場合は成功
でした。
tcpdumpやwiresharkで、原因を調査してみます
 
angel
ぬし
会議室デビュー日: 2005/03/17
投稿数: 711
投稿日時: 2007-03-20 12:24
こんにちは。
とりあえず、そのサイトでの iptables 設定は妙だ、と申し上げます。

関連する設定として、

 iptables -A INPUT -p tcp --dport 20 -j ACCEPT
 iptables -A INPUT -p tcp --dport 21 -j ACCEPT

これがあれば、FTPのActiveモードは通るはずですね。
ただ、Activeモードなので、ルータ等でのNATが間にあると、通信がうまく行かない可能性があります。
なお、この iptables設定では、Passiveモードは通りません。

それはそれとして、私の好みで言えば、そこらへんの設定は大部分捨てて、conntrack ベースの設定に変えますね。conntrack_ftp を使えば、ActiveモードとかPassiveモードとか深く考える必要がなくなりますし。
具体的には、--sport の指定のルールは全部捨て、20番ポートのルールも捨て、

 iptables -A INPUT -i lo -j ACCEPT
 iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

のルールで、ループバックの通信と、戻りの通信を許可。
後は、/etc/sysconfig/iptables-config に、IPTABLES_MODULES="ip_conntrack_ftp" の行を追加することで、conntrack_ftp を有効にできます。( 要 iptables再起動 )

スキルアップ/キャリアアップ(JOB@IT)