メイン

vsftpd アーカイブ

2007年02月04日

vsftpdの設定

vsftpdはCentOS4ではパッケージインストール出来ます。
anonymousサービスは受け付けずシステムユーザだけ使えるようにします。
標準ではlastコマンドで接続履歴が見れないので見えるように設定します。
FTP接続ユーザは自身のディレクトリ以外移動出来ない設定しようと思ったのですが
RedhatES4のリファレンスを見ると chroot_local_user を使うのは危険とあったので今回は見送ることにします。

今回はパッケージを使ってインストールし,実運用するまでを書きます。
まずシステムにインストールされていない場合は以下のコマンドでインストールしましょう。

# yum install vsftpd

設定ファイルはvsftpd.confだけでいけるようです。
注意点としてイコールの前後にスペースが入ってはいけないようです。

# vi /etc/vsftpd/vsftpd.conf

設定は以下。
---
anonymous_enable=NO # anonymousサービスはしない
local_enable=YES # ローカルユーザは利用可能
write_enable=YES # 書き込み可能
local_umask=022 # マスクの設定
dirmessage_enable=NO # ディレクトリ移動の際,.message(デフォルト)ファイルの内容を表示しない
vsftpd_log_file=/var/log/vsftpd.log # ログファイルの指定
xferlog_enable=YES # 接続とファイル転送情報のログを取る
xferlog_std_format=NO # wu-ftpd互換のログファイルにしない
connect_from_port_20=YES
ascii_upload_enable=YES # Asciiモードによる転送を許可
ascii_download_enable=YES
banner_file=/etc/vsftpd/welcome.msg # ウェルカムメッセージ。接続した時点で表示される内容を書くファイル
ls_recurse_enable=YES # 再帰的アップロード,ダウンロードの許可
pam_service_name=vsftpd # PAMを利用する時の名前
listen=YES # スタンドアロンモードで実行
max_clients=50 # スタンドアロンモードの時の最大接続数
tcp_wrappers=YES # hosts.allow hosts.deny によるアクセスを可能に
use_localtime=YES # コンピュータのローカル時間を使う
session_support=YES # ログインセッションの保全(lastコマンドで表示されるようにする)
---

これでOK。
後はシステムに自動起動登録をして起動して様子を見ます。

# chkconfig --level 35 vsftpd on
# chkconfig --list vsftpd
# service vsftpd start

一度接続してみてファイルをアップロードなりダウンロードなりしてみましょう。
そして/var/log/vsftpd.logを見てみます。
接続情報とファイル情報が書かれていればきちんとログがとれています。
lastコマンドも確認しておきましょう。
vsftpdのログが表示されていればOK。