vsftp from xinetd
stand-aloneではなく、xinetdからFTPサーバ(vsftp)を構築する。
今回も On FreeBSD (Ver. 9.0)
まず、xinetdをコンパイル&インストール
cd /usr/ports/security/xinetd
make config-recursive
make install
マニュアル、「man vsftpd.conf」や
http://www.express.nec.co.jp/linux/distributions/knowledge/network/xinetd.html
参考にさせてもらいながら設定をする。
デフォルト設定ファイルを/usr/local/etc/xinetd.confを作成して、以下を記述。
#default configuration
defaults{
instances = 60
log_type = FILE /var/log/servicelog # syslog も指定できるみたい
log_on_success = PID
log_on_failure = HOST
disabled = restatd
cps = 35 30
}
includedir /usr/local/etc/xinetd.d
起動時にサービス起動できるように./etc/rc.confに以下を追加
xinetd_enable="YES"
つぎにvsftpのコンパイル&インストール
cd /usr/ports/ftp/vsftp
make config-recursive
make install
設定に関するドキュメントは、/usr/local/share/doc/vsftpd/EXAMPLE/INTERNET_SITE/
以下にある。
まず、xinetdの各サービスの設定ファイルを格納するディレクトリを作成する
mkdir -p /usr/local/etc/xinetd.d
そして、xinetdのvsftpd用の設定ファイルのサンプルファイルをコピーする
cd /usr/local/share/doc/vsftpd/EXAMPLE/INTERNET_SITE/
cp vsftpd.xinetd /usr/local/etc/xinetd.d/vsftpd
そして、コピーしたファイルに少し手を加える以下は、サンプルと手を加えた後のファイルの差分。
*** vsftpd.org Sun Sep 16 01:18:59 2012
--- vsftpd Sun Sep 16 01:03:52 2012
***************
*** 5,15 ****
socket_type = stream
wait = no
user = root
! server = /usr/local/sbin/vsftpd
per_source = 5
instances = 200
! no_access = 192.168.1.3
! banner_fail = /etc/vsftpd.busy_banner
log_on_success += PID HOST DURATION
log_on_failure += HOST
}
--- 5,15 ----
socket_type = stream
wait = no
user = root
! server = /usr/local/libexec/vsftpd
! #server_args = start
per_source = 5
instances = 200
! banner_fail = /usr/local/etc/vsftpd.busy_banner
log_on_success += PID HOST DURATION
log_on_failure += HOST
}