green FTP サーバの構築 | [目次] [前のページ/次のページ] |
FTP とは File Transfer Protcol(ファイル転送プロトコル)の略である。
つまり、ネットワークを経由してファイルをやり取りするための仕組み。
これはサーバからファイルをダウンロード・アップロードするときによく用いられる。
ここでは wu-ftpd-2.6.0 を用いて FTP サーバーを構築する方法を解説する。
なお、OS(オペレーティングシステム)のインストールについては再構築資料 "基本システムのインストール" を参照し、終えておくこと。
wu-ftpd には debian パッケージも存在するが、
専攻サーバでは最新版を利用するために、
以下の手順でソースファイルを取得しコンパイルする。
必要なファイルは以下の2つ。
これらを提供している ftp サイトより各々 /home/green/ にダウンロードする。
次に、取得したこれらのファイルをソースファイルとして保管する
ディレクトリを用意する。green では /home/green/src 。
$ mkdir /home/green/src
ここに、先ほどのファイルをコピーしておく。
$ cp wu-ftpd-2.6.0.tar.gz /home/green/src/.
ファイル wu-ftpd-2.6.0.tar.gz は
複数のファイルがまとめて圧縮された状態にある。
このままではコンパイルすることはできないので、元に戻す必要がある。
(これを展開もしくは解凍と呼ぶ)
そこで、ファイル wu-ftpd-2.6.0.tar.gz を
ディレクトリ /home/green/ に展開する。
$ cd /home/green/
$ tar xvpzf wu-ftpd-2.6.0.tar.gz
展開した結果として作られたディレクトリ wu-ftpd-2.6.0 に移動する。
$ cd wu-ftpd-2.6.0/
wu-ftpd のコンパイルとインストールの手順は、
"通例よく見かけるコンパイルとインストールの手順"と少々異なる。
ここで言う"通例よく見かけるコンパイルとインストールの手順"とは、以下の手順である。
$ ./configure
$ make
# make install
※因みに wu-ftpd 製作グループによると、
wu-ftpd も将来的には上記の手順に移行する予定であるそうだ。
■ 下準備
wu-ftpd では次のように行う。
まず、個々のコンピュータ環境に応じたコンパイル&インストールを行うよう、
次のコマンドを実行する。
$ ./bulid lnx
ここで lnx は、Linux 系OSを用いていることを指定している。
■ 設定ファイル配置先の変更
次に、wu-ftpd の動作設定ファイルを置くべきディレクトリを変更するため、
コンパイル前にソースファイルの一部を編集する。
何も編集せず、変更を加えない場合、
wu-ftpd の動作設定ファイルは /etc/ に置かなければならない。*1
ディレクトリ /etc/ には他ソフトウェアの設定ファイルが
入っており、そこに wu-ftpd の動作設定ファイルも
そのまま一緒に混ぜてしまうと、
wu-ftpd 関連のファイルとその他のファイルの区別が
直感的に出来ず、賢明ではないと言える。
具体的には、green では /etc/wu-ftpd-2.6.0/ に置く。
ディレクトリ /etc/ に ディレクトリ wu-ftpd-2.6.0 が存在しない場合は、
ここで作成しておこう。
# mkdir /etc/wu-ftpd-2.6.0
編集するソースファイルは pathnames.h.noac 。
上の通り作業していれば、/home/green/wu-ftpd-2.6.0/src/ にある。
vi や emacs でこのファイルを開き書き換える。
ここでは、書き換える必要のある部分だけ抜き出した。
すなわち、<73>行、<74>行、<75>行、<195>行目を、
#define _PATH_FTPACCESS "/etc/wu-ftpd-2.6.0/ftpaccess" #define _PATH_CVT "/etc/wu-ftpd-2.6.0/ftpconversions" #define _PATH_PRIVATE "/etc/wu-ftpd-2.6.0/ftpgroups" #define _PATH_FTPHOSTS "/etc/wu-ftpd-2.6.0/ftphosts"
と変更する。
■ FTP サービスの一時停止
インストールを行う前に、外部から ftp サービスを利用できないよう、
安全のため一時的に停止させる。初めて ftp サービスを提供する場合
この操作は必要ない。しかし、後でサービスを開始する場合に参考に
なるので、読んでおくこと。
まず /etc/inetd.conf を編集する。<29>行目の ftp の項目を、
#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd
の様に、行頭に # をつけコメントアウトする。
次に、行った変更を有効にするため inetd を再起動する。
# ps aux
として inetd のプロセス番号を確認し、
# kill -HUP [inetd のプロセス番号]
として inetd を再起動する。
詳しくは
http://www.ep.sci.hokudai.ac.jp/~epcore/dvlop/TEBIKI.ep_security.html
を参照のこと。
■ インストール
$cd /home/green/wu-ftpd-2.6.0
# ./build install
とすればインストールは完了である。
インストール成否の目安として、
in.ftpd のバージョンを確認する方法がある。
$ /usr/sbin/in.ftpd -V
とやってみて
Copyright (c) 1999 WU-FTPD Development Group. All rights reserved. Portions Copyright (c) 1980, 1985, 1988, 1989, 1990, 1991, 1993, 1994 The Regents of the University of California. Portions Copyright (c) 1993, 1994 Washington University in Saint Louis. Portions Copyright (c) 1996, 1998 Berkeley Software Design, Inc. Portions Copyright (c) 1989 Massachusetts Institute of Technology. Portions Copyright (c) 1998 Sendmail, Inc. Portions Copyright (c) 1983, 1995, 1996, 1997 Eric P. Allman. Portions Copyright (c) 1997 by Stan Barber. Portions Copyright (c) 1997 by Kent Landfield. Portions Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc. Use and distribution of this software and its source code are governed by the terms and conditions of the WU-FTPD Software License ("LICENSE"). If you did not receive a copy of the license, it may be obtained online at http://www.wu-ftpd.org/license.html.
と表示されれば良いだろう。
■ サービスの再開
基本的に停止時の逆操作を行えば良い。即ち inetd.conf で先程
書き加えた # を削除して保存、しかるのちに inetd を再起動
する。
更新日: 2000/07/14 河野仁之 | [目次] [前のページ/次のページ] |