vsftpd をインストール
apt でインストール
apt install vsftpd
user_list に書かれたユーザーのみログインできるようにします。
vi /etc/vsftpd.conf
# listen=yes (Both ipv4 and ipv6)
listen=yes
#listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
#log_ftp_protocol=YES
ascii_upload_enable=YES
ascii_download_enable=YES
# 全てのユーザーに対してchroot します。ただchroot_local_user を設定すると
# chroot_list に書かれたユーザーは逆にchroot から除外される。要注意!
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
# 子ディレクトリを有する場合でも一括削除を許可
ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
# user_list に書かれたユーザーのみログオンできる。
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list
# 書き込み可能なディレクトリへのchroot を許可する
# [500 OOPS: refusing to run with writable root inside chroot]
allow_writeable_chroot=YES
# passive mode(use port 11000-11100)
pasv_enable=YES
pasv_min_port=11000
pasv_max_port=11100
ログインできるユーザーを登録。
vi /etc/vsftpd.user_list
ast
ログインさせたくないユーザーを登録。
/etc/ftpusers
chroot 不要のユーザーを登録(空でもファイルは必須)
touch /etc/vsftpd.chroot_list