インターネットに接続していないクローズドな環境で、 とあるシステムの環境構築などを担当していたのですが、 そのシステムをお使いの方から 「FTP の接続が遅いのだけど、どうにかならない?」 というお問い合わせを頂きました。
試してみると確かに遅い。 Connected to hogehoge と表示されてから User 名を入力するまでに十数秒待たされます。 なお、 現在サーバで使っているディストリビューションは、 Miracle Linux 2.1 で、 FTP サーバは標準の ProFTPd 1.2.7 です。
最初は、 ProFTPd がクライアントの名前解決に時間がかかってるだけだろうと高を括っていたのです。 /etc/hosts あたりを直せばすぐ解決と思ってたんですけど、 そうは簡単にいきませんでした。
ちょっと調べたところ、 解決するには以下の 2 点の修正を行えばよいらしい。
・ProFTPd に Ident Lookup をやめさせる
・ProFTPd を xinetd 経由でなく常駐起動に変更する
[ /etc/proftpd.conf の修正 ]
ServerType を inetd から standalone へ変更します。
ServerType inetd → ServerType standalone
下の行を追加します。(ServerType の下でよろし)
IdentLookups off
[ /etc/xinet.d/proftpd の修正 ]
disable を no から yes へ変更します。
disable = no → disable = yes
[ /etc/init.d/proftpd の作成 ]
こんな感じの内容で、 proftpd というファイルを作成します。
以上の修正が終わったら、 いくつかおまじないを唱えれば終了。 root で行います。
# /etc/init.d/xinetd restart
# chown root:root /etc/init.d/proftpd
# chmod 755 /etc/init.d/proftpd
# /etc/init.d/proftpd start
てな感じで解決しました^^。
今回は不要でしたが、 UseReverseDNS off も proftpd.conf に追加しておけばさらに安心?




コメントする