プロが教える店舗&オフィスのセキュリティ対策術

サーバへのFTP接続継続時間についての質問です。
症状は、FTPソフトを操作しないまま1~2分放っておくと接続が切れてしまう、というものです。
FTPソフトは「FFFTP Ver 1.89a」を使用しています。
サーバは社内に設置されたローカルサーバで、「Red Hat Linux 7.3」を使用しています。
Telnetは切れないように設定してもらったので一切切断されないのですが、FTPについては管理者もただ首を傾げるばかりで、サーバの設定なのかFTPソフトの設定なのかも見当もつきません。
もし、FTPの接続継続時間について設定がお分かりの方おられましたら、ぜひともご教授ください。
よろしくお願い致します。

A 回答 (4件)

ちなみにxinetdにコネクションを切断する機能はありません。



というわけでだいたい見当がついてきました。
おそらくproftpdのバイナリ作成時にデータ転送後のタイムアウト秒数が指定されていると思われます。
(TCP/IPソケットプログラムの世界に踏み込んでしまいました。)

というわけでproftpdのホームページより、ソースをダウンロードしてコンパイル時のオプションを調べてみました。
ftp://ftp.infoscience.co.jp/pub/proftpd/distrib/ …

# tar xvzf proftpd.1.2.7rc2.tar.gz
# cd proftpd-1.2.7rc2
# ./configure --help | less

とやると、見つけました。

--enable-timeout-linger
    set the default timeout (in secs) for
    lingering closes (default=180)

TCP/IPソケットのデータ転送後コネクションを切断する時間(標準で180秒=約3分)がコンパイル時に指定されていると考えられます。

# ./configure --enable-timeout-linger=秒数
または
# ./configure --disable-timeout-linger

のあと

# make ; make install

と実行すると

/usr/local/sbin/proftpd
/usr/local/sbin/in.proftpd
/usr/local/etc/proftpd.conf

がインストールされます。

#2の補足を拝見すると
server = /usr/local/sbin/in.proftpd
と指定されているので、redhat標準のproftpdではなくソースからコンパイルされてるようですね。

一度上記のオプションを指定して再コンパイルしてみてはいかがでしょうか?

参考URL:http://www03.u-page.so-net.ne.jp/da2/h-takaha/in …
    • good
    • 1
この回答へのお礼

お礼が遅くなりまして、大変申し訳ございません。
こちらの内容を拝見し、早速ヘルプを見てみましたが、インストールされているProFTPDのバージョンが1.2.6だったためか、-timeout-linger に関するコンパイルオプションの情報が見つかりませんでした。

その後、これまで頂いた回答を元にいろいろ試してみたのですが、TimeoutLogin と TimeoutNoTransfer の設定を proftpd.conf に加えましたところ、短時間で切断されることがなくなりました。
(両方同時に加えてみたので、どちらの設定が有効だったのかは不明です。申し訳ございません。)

ともかく、おかげさまで設定を変更することが出来ました。
また、今回のことで大変勉強にもなりました。
本当にありがとうございました。

お礼日時:2002/10/28 23:08

TimeoutStalled ではだめでしたか。



ではTimeoutIdle はどうでしょう?


TimeoutStalledは、データーをやり取りし始めたが実質的にデーターが流れていない状態でタイムアウトになるまでの時間

TimeoutIdleは、サーバーとクライアント間で何も通信が無い状態でタイムアウトになるまでの時間

この回答への補足

度々の回答ありがとうございます。
TimeoutIdleも設定してみましたが、やはり変わりないようです。
前回の補足に書きました「proftpdをデーモンとして起動していない」ということは、何か関係ありますでしょうか?
まぁ不便なだけで、出来ないと困るというほどのことでもありませんので、進展がないようでしたら、あと数日で締め切りたいと思います。
どうもありがとうございました。

補足日時:2002/10/24 16:29
    • good
    • 0

サーバでも設定できます。



wu-ftpdなら起動時に
-t 秒数
と指定する。

proftpdなら/etc/proftpd/proftpd.confの
TimeoutStalled 秒数
と指定する。

この回答への補足

ご回答ありがとうございます。
使用しているのはProFTPDでしたので、早速proftpd.confのTimeoutStalledを3600にしてみましたが、やはりだめでした。

管理者に確認したところ、proftpdはデーモンとして起動させておらず、xinetdのftpの設定で起動するようになっているということでしたので、これが原因かもしれません。
※設定は次のようになっています。
# default: off
# description: ProFTPD
service ftp
{
flags = REUSE
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/local/sbin/in.proftpd
log_on_failure += USERID
disable = no
}

もしTimeoutStalled以外のproftpdの設定や、xinetdの設定でこれを変えられるようでしたら、またよろしくお願い致します。

補足日時:2002/10/23 15:47
    • good
    • 0

オプション→転送2→ネットワークタイムアウト時間


の設定項目の中を
0=タイムアウトなし
にされてみてはいかがでしょうか?
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
ネットワークタイムアウト時間を0にしてみましたが、やはり1~2分程度で切れてしまうようです。
どうやらサーバ側の設定のようですので、そちらを調べてみたいと思います。
どうもありがとうございました。

お礼日時:2002/10/23 15:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています