第1部 構築編

本番運用に向けて

FTP サーバ構築

さて、リモートログインが出来るようになったところで、LAMP サーバを作るための環境を構築してしまおう。
まず最初は FTP サーバを構築して、ファイルアップロードを迅速にこなせるようにしたい。
Red Hat Linux では標準で WU-FTPD というサーバソフトウェアが採用されているが、これを ProFTPD という別の FTP サーバソフトウェアに変えてしまっていたのは以前に書いたとおり。
今回も ProFTPD のインストールを行っておく。

お試しでインストールした ProFTPD のバージョンは 1.2.6 だったが、その時点で 1.2.7rc2 が出ていたのを憶えている。
もう一度 ProFTPD のサイトに行って最新版を確認しておこう。

おぉ、上がってるじゃん♪

1.2.7rc2 が正式に 1.2.7 として公開されていた。
既に 1.2.8rc1 が出ていたが、正式版の 1.2.7 を取ってくる。
これを WinSCP を利用してサーバに転送。

では、リモートログインしてインストール開始だ。
ダウンロードしてきた proftpd-1.2.7.tar.gz は /home/********/ にコピーしたので、root になってから慣例に従って /usr/local/src/ProFTPD/ へコピーする。

/usr/local/src/ 以下が root 以外に書き込み権限がないので、あらかじめ root になっておく。
間違ってもパーミッションを緩和する真似はしてはいけない

su
Password: ????????
mkdir /usr/local/src/ProFTPD
mv proftpd-1.2.7.tar.gz /usr/local/src/ProFTPD/

そして、カレントディレクトリを tar ボールをコピーしたディレクトリに移動して、展開、作成される proftpd-1.2.7 というディレクトリに潜る。

cd /usr/local/src/ProFTPD/
tar -xzf proftpd-1.2.7.tar.gz
cd proftpd-1.2.7

さて、コンパイル開始だ。
configure スクリプトで環境を設定し、make、更に make install の手続きは、ソースからインストールする場合のほとんど共通化された手続きだ。
ProFTPD をインストールする先を /usr/local/proftpd にしたいので、configure スクリプトにもパラメータを与えてやる。

./configure --prefix=/usr/local/proftpd
make
make install

さて、Red Hat Linux では標準状態でエラーを返すことは前回勉強済みだ。
なので、/usr/local/proftpd/etc/proftpd.conf を修正する。

Group                           nogroup

と書かれている行があるので、これを以下のように書き換える。

Group                           nobody

さらに、ProFTPD をスーパサーバ xinetd から起動させるために、/etc/xinetd.d ディレクトリに ftp という名前のファイルで、以下の内容を記述する。

service ftp
{
    flags           = REUSE
    socket_type     = stream
    wait            = no
    user            = root
    server          = /usr/local/sbin/proftpd
    log_on_failure  += USERID
    disable         = no
}

そして再び /usr/local/proftpd/etc/proftpd.conf を開き、

ServerType                      standalone

と書かれている行を、

ServerType                      inetd

と書き換える。
これで必要な時だけ起動して、必要なくなれば終了する FTP サーバが出来上がったわけだね。
取り敢えず xinetd に設定を反映させるために、xinetd を再起動する。

/etc/rc.d/init.d/xinetd restart

んで、Windows の NextFTP で接続試験。

………あれ?

接続失敗
接続が拒否られてしまった??
色々と調べていくと、/etc/xinetd.d/ftp に記述ミスを発見。

    server          = /usr/local/sbin/proftpd

と書いてあるところは、

    server          = /usr/local/proftpd/sbin/proftpd

だね………
紆余曲折日記の過去分に誤植があったみたいだ(爆)
早速両方直しておく。
んで気を取り直して再び NextFTP で繋ぎに行くと、今度は正常に接続出来た
これでファイルの送受信は随分と楽になったね。

お試しでは anonymous FTP を作るために躍起になっていたけど、取り敢えず今は放っておこう。
必要になり次第構築すればいいしな。

Valid HTML 4.01 Strict Valid CSS!