|
■概要 |
wu-ftpd はアクセス制限や回線速度制限など,標準の ftpd では実現できないような設定を提供します.
ISDN ユーザーにとっては,回線速度制限が一番の目玉かと思いますので,ぜひインストールすることをおすすめします.
なお,この wu-ftpd のインストールは,ftp デーモンが既に起動していて,anonymous FTP の設定が完了していることを前提に話を進めてゆきます.
■インストールは packages で |
ソース取ってきてコンパイルしても良いのですが,面倒なので packages でやってしまいましょう.
packages/ftp/wu-ftpd_2_5_0.tgz があるので,そのディレクトリで
# pkg_add wu-ftpd_2_5_0.tgz
とでもするとインストールできます.
■ソースからインストールしてみる? |
ソースからインストールする場合は,通常の configure; make; make install では正常にインストールできません.
INSTALL ドキュメントを見ていただければわかりますが,インストール時には ./build コマンドを使わないとインストールできません.
使用する OS は FreeBSD なので,以下のようにコマンドを叩いてください.
# ./build fbs
これで FreeBSD 版でコンパイルされます.
次に,もし最新版にアップグレードするならば,このときに/usr/local/etc/ftp* のバックアップを取っておきましょう.
そして以下のコマンドを叩いてインストールを実行します.
# ./build install
これで /usr/local/libexec/ に ftpd バイナリがコピーされます.
何処にどのファイルがコピーされるかは Makefile に記述してあります.
2.6.1 の FreeBSD インストールでは,
ftpd | /usr/local/libexec/ |
このほかのバイナリ | /usr/local/bin/ |
マニュアル | /usr/local/man/maxX/ |
設定ファイル | 自前で /etc/ へコピー |
設定ファイルは自前でコピーしなくてはならないので,以下のファイルを /etc/ にコピーしてください.
docs/examples/ftpaccess docs/examples/ftpconversions docs/examples/ftpgroups docs/examples/ftphosts docs/examples/ftpservers docs/examples/ftpusers |
設定ファイルの置き場所は configure ファイルを編集すれば変更できます.
詳しくは README.AUTOCONF を参照してください.
あとは /etc/inetd.conf を編集して,wu-ftpd が起動するように変更しましょう.
通常は ftpd が起動する設定になっているので,
ftp stream tcp nowait root /usr/libexec/ftpd ftpd |
これを以下のように設定し直します.
ftp stream tcp nowait root /usr/local/libexec/ftpd ftpd -a -l |
ftpd のオプション -a は ftpaccess ファイルを読み込んで,その内容に従ってアクセス制限を行います.
-l は /var/log/xferlog ファイルにログを記録するオプションです.
そして,inetd を再起動します.
# ps ax | grep inet # kill -HUP "inetd のプロセス番号" |
これで次からは wu-ftpd が起動します.
■syslog の設定 |
wu-ftpd のアクセス記録は syslog で記録するようにするので,/etc/syslog.conf を設定します.
以下の設定を /etc/syslog.conf の一番最後に記述してください.
!ftpd *.* /var/log/ftpd.log |
これで syslog でのログファイルを吐くようになりますが,空のログファイルを生成しておかないとログを吐いてくれません.
ということで,空のファイルを生成しておきます.
# touch /var/log/ftpd.log
これで準備完了です.
■面倒な設定 |
wu-ftpd は,「そのいろいろとカスタマイズできる」という強みのため,かなり面倒な設定をしなければなりません.
ただし,一度設定を決めてしまうとあとは放ったらかしで OK なのでここは気合いをいれて行きましょう.
サンプルはこれをダウンロードしてください.
必要最低限の設定は以下の通りです.
ただしこれだと 64Kbps ISDN だとスループット MAX になったときに外に出ていくのが大変だったりするので,できれば tcpwindow オプションや throughput オプションで速度規制を敷いた方がいいでしょう.
おすすめは上下ともに速度規制を敷くことの出来る tcpwindow ですが,「ダウンロードしかさせないぜ〜」という人は throughput オプションで各種設定を行うと良いでしょう.
(なんで throughput オプションは DL オンリーな設定なのだろうぶつぶつ・・・)
class user real,guest * class anon anonymous * readme README* login readme README* cwd=* message /etc/msgs/welcome_anonymous.msg login anon message .message cwd=* compress yes all tar yes all log commands real,anonymous log transfers anonymous,real inbound,outbound upload /usr/ftp /incoming yes ftp operator 0664 dirs 0755 shutdown /etc/shutmsg email griffon@os.xaxon.ne.jp chmod no anonymous umask no anonymous |
設定項目の説明はサンプルファイルの中に嫌というほど書いているのでそれを参考にしてください.
Google で根性入れて調べていると,GeoCities に ftpaccess(8) を日本語化した HTML ベースの説明書がありました.
■接続実験 |
anonymous で接続できるか,一般ユーザーで接続できるかを確認してください.
最小限の確認事項は,とりあえず anonymous で incoming/ にアップロードできるかどうか,一般ユーザーで自分のディレクトリにアップロードできるかどうかを確認すればよいでしょう.
◆番外編:chroot したときのファイル |
一般ユーザーや anonymous を chroot すると,ディレクトリの位置が変わってしまうので etc/ や bin/ に入っているコマンドが使えません.
そこで各ユーザーディレクトリに etc/ や bin/ を掘って必要なファイルをコピーしなければなりません.
その手順を以下に記しますので参考にどうぞ.
*1:ここで使用するユーザーは griffon とする.
*2:ホームディレクトリは /home/ とする.
←戻る |
Made with PC-9821Xt/C10W K.O.T.B.G. Special Tune Model "CAIT-SITH" Made with Original Machine "MIRAGE" Made by HyperEdit for Windows |