##インストール
yum install vsftpd
openssl req -x509 -nodes -newkey rsa:2048 -keyout /etc/pki/tls/certs/vsftpd.pem -out /etc/pki/tls/certs/vsftpd.pem Generating a 2048 bit RSA private key
いろいろ聞かれるので素直に答える。
vi /etc/vsftpd/vsftpd.conf
# 匿名禁止
anonymous_enable=NO
# ASCIIのアップダウン許可
ascii_upload_enable=YES
ascii_download_enable=YES
# ユーザのホームディレクリをルートに設定する。
# chroot_listに設定したユーザだけはどこでもいける。
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
# chrootの有効化
allow_writeable_chroot=YES
# ディレクトリの削除を可能にする
ls_recurse_enable=YES
# userlistをホワイトリストにする(デフォルトはブラック)
userlist_enable=YES
uerlist_deny=NO
# SSLの設定をする
ssl_enable=YES
rsa_cert_file=/etc/pki/tls/certs/vsftpd.pem
ssl_sslv2=NO
ssl_sslv3=NO
ssl_tlsv1=YES
# PASV mode
pasv_address=sample.jp
pasv_enable=YES
pasv_min_port=50021
pasv_max_port=50040
# このホームディレクトリが初回表示ディレクトリになる
useradd -d /path/to/home -s /sbin/nologin kaela
passwd kaela
##基本的な考え方 ###どうやってアクセス制限を実現するか 一番わかりやすいのはホワイトリストを作成すること。
userlist_enable=YES
userlist_deny=NO
とすることでuser_listというファイルがホワイトリスト扱いになるので、
許可するユーザを列挙すればいい。
###どうやってディレクトリを制限するか
ログインユーザのルートを変更する仕組みがある(chroot)。
これを設定するとユーザがログインしたディレクトリがルートになるので、
それよりも上の階層にアクセスさせないようにできる。
ただ、管理者など制限なくアクセスしたいユーザもいると思うので、
なんでもありなユーザはchroot_list_fileに追記する。