VSFTPD インストール

この章を始める前に下記の設定が必要です
「無料SSLサーバー証明書 Let's Encrypt インストール」
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)を開放。
Home PageTop