VSFTPD インストール
vsftpdインストール
[root@centos ~]# yum -y install vsftpd
vsftpd.conf編集
[root@centos ~]# vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
↓
anonymous_enable=NO ←変更(anonymous(匿名)のログインを許可しない。)
#xferlog_file=/var/log/vsftpd.log
↓
xferlog_file=/var/log/vsftpd.log ←コメント解除(ログファイルの指定)
#ascii_upload_enable=YES
↓
ascii_upload_enable=YES ←コメント解除(ASCIIモードでのアップロードを許可)
#ascii_download_enable=YES
↓
ascii_download_enable=YES ←コメント解除(ASCIIモードでのダウンロードを許可)
#chroot_local_user=YES
chroot_local_user=YES ←コメント解除(デフォルトでホームディレクトリより上階層への移動を禁止)
#chroot_list_enable=YES
↓
chroot_list_enable=YES ←コメント解除(ホームディレクトリより上階層への移動を許可するリスト)
#chroot_list_file=/etc/vsftpd/chroot_list
↓
chroot_list_file=/etc/vsftpd/chroot_list ←コメント解除(上記ユーザーの指定ファイル)
#ls_recurse_enable=YES
↓
ls_recurse_enable=YES ←コメント解除(ディレクトリごとの削除を許可する)
listen=NO
↓
listen=YES ←変更(IPv4を許可)
listen_ipv6=YES
↓
listen_ipv6=NO ←変更(IPv6を許可)
↓最終行に下記を記入
# VSFTPD configuration
pasv_enable=YES
pasv_addr_resolve=YES
pasv_address=server-manual.com
pasv_min_port=4000
pasv_max_port=4029
use_localtime=YES
ssl_enable=YES
rsa_cert_file=/etc/letsencrypt/live/server-manual.com/fullchain.pem
rsa_private_key_file=/etc/letsencrypt/live/server-manual.com/privkey.pem
#require_ssl_reuse=NO
force_local_logins_ssl=NO
force_local_data_ssl=NO
force_dot_files=YES
ヒント
# VSFTPD configuration
pasv_enable=YES ←パッシブモード有効
pasv_addr_resolve=YES ←pasv_address有効
pasv_address=ftp.server-manual.com ←ルータのWAN側IPアドレス(動的IPの場合はホスト名)
pasv_min_port=4000 ←パッシブモードの最小ポート番号
pasv_max_port=4029 ←パッシブモードの最大ポート番号
use_localtime=YES ←ローカルタイムを使用
ssl_enable=YES ←SSL接続を許可
rsa_cert_file=/etc/letsencrypt/live/ドメイン名/fullchain.pem ←証明書と中間証明書を連結したファイルの場所を指定
rsa_private_key_file=/etc/letsencrypt/live/ドメイン名/privkey.pem ←秘密鍵のファイルの場所を指定
require_ssl_reuse=NO ←SSLセッションを再利用しない(v2.1.0以上対応)
force_local_logins_ssl=NO ←強制SSL接続を解除
force_local_data_ssl=NO ←強制SSL接続を解除
force_dot_files=YES ←ドット付きファイルを表示
/etc/hosts.allow編集
[root@centos ~]# echo "vsftpd: ALL" >> /etc/hosts.allow
chroot_list編集
[root@centos ~]# echo user_name >> /etc/vsftpd/chroot_list
VSFTPd起動
[root@centos ~]# systemctl start vsftpd
[root@centos ~]# systemctl enable vsftpd
[root@centos ~]# systemctl is-enabled vsftpd
enabled
外部に公開する場合
プロトコル(TCP)ポート21番(FTP)を開放。
プロトコル(TCP)ポート4000~4029番(PASV)を開放。