FTPサーバ(Vsftpd)のインストール・設定

動作確認システム CentOS 6/CentOS 7

インストール

端末で以下のコマンドを実行する。

yum -y install vsftpd

設定

/etc/vsftpd/vsftpd.confを編集。

vi /etc/vsftpd/vsftpd.conf
#匿名ログイン禁止
anonymous_enable=NO

# /var/log/vsftpd.logに接続・転送を記録(1/3)
xferlog_enable=YES

# /var/log/vsftpd.logに接続・転送を記録(2/3)
xferlog_file=/var/log/vsftpd.log

# /var/log/vsftpd.logに接続・転送を記録(3/3)
xferlog_std_format=NO

# アスキーモードでの転送許可
ascii_upload_enable=YES
ascii_download_enable=YES

# chroot有効
chroot_local_user=YES
chroot_list_enable=YES

# chrootリストファイル指定
chroot_list_file=/etc/vsftpd/chroot_list

# ディレクトリごと一括での転送有効
ls_recurse_enable=YES

# 制御コネクションのポート変更
listen_port=50021

# データコネクションのポート変更
pasv_min_port=50020
pasv_max_port=50020
ftp_data_port=50020

# PAMサービス名を指定する
pam_service_name=vsftpd

# ローカルタイムを使う
use_localtime=YES

# CentOS 7.xの場合のみ。ディレクトリが書き込み可能でもchrootを利用する
allow_writeable_chroot=YES

/etc/vsftpd/chroot_listのファイルがないとログインできないため、空ファイルを作っておく。

echo -n > /etc/vsftpd/chroot_list

起動、自動起動設定

Vsftpdを起動し、自動起動設定を行う。

CentOS 6.xの場合

service vsftpd start
chkconfig vsftpd on

CentOS 7.xの場合

systemctl start vsftpd
systemctl enable vsftpd