OCIでLAMP環境の構築(Oracle Linux8)vsFTPdインストール
自己証明書の作成
sudo openssl req -new -x509 -days 3650 -key server.key -out ftp.crt
sudo su -
cat server.key ftp.crt > ftp.pem
exit
sudo chmod 400 ftp.*
cd /
vsFTPdのインストール
sudo dnf -y install vsftpd
sudo vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES ←12行目くらい(デフォルトでNOならそのまま)
↓
anonymous_enable=NO ←変更(anonymous(匿名)のログインを許可しない。)
#xferlog_file=/var/log/xferlog ←52行目くらい
↓
xferlog_file=/var/log/xferlog ←コメントを外す
#ascii_upload_enable=YES ←82行目くらい
↓
ascii_upload_enable=YES ←コメント解除(ASCIIモードでのアップロードを許可)
#ascii_download_enable=YES ←83行目くらい
↓
ascii_download_enable=YES ←コメント解除(ASCIIモードでのダウンロードを許可)
#chroot_local_user=YES ←100行目くらい
↓
chroot_local_user=YES ←コメント解除(デフォルトでホームディレクトリより上階層への移動を禁止)
#chroot_list_enable=YES ←101行目くらい
↓
chroot_list_enable=YES ←コメント解除(ホームディレクトリより上階層への移動を許可するリスト)
#chroot_list_file=/etc/vsftpd/chroot_list ←103行目くらい
↓
chroot_list_file=/etc/vsftpd/chroot_list ←コメント解除(上記ユーザーの指定ファイル)
#ls_recurse_enable=YES ←109行目くらい
↓
ls_recurse_enable=YES ←コメント解除(ディレクトリごとの削除を許可する)
listen=NO ←114行目くらい
↓
listen=YES ←変更(IPv4を許可)
listen_ipv6=YES ←123行目くらい
↓
↓最終行に下記を記入 pasv_addressはグローバルアドレス
# VSFTPD configuration
pasv_enable=YES
pasv_addr_resolve=YES
pasv_address=グローバルIPアドレス
pasv_min_port=4000
pasv_max_port=4029
use_localtime=YES
ssl_enable=YES
rsa_cert_file=/etc/pki/tls/certs/ftp.pem
require_ssl_reuse=NO
force_local_logins_ssl=NO
force_local_data_ssl=NO
force_dot_files=YES
/etc/hosts.allow編集
sudo su -
echo "vsftpd: ALL" >> /etc/hosts.allow
exit
ftp用のユーザーを作成(パスワードは大文字,小文字,数値,記号を含む必要がある)
sudo useradd ftpuser
sudo passwd ftpuser
chroot_list編集
VSFTPd起動
sudo systemctl start vsftpd
sudo systemctl enable vsftpd.service
sudo systemctl is-enabled vsftpd.service
enabledと表示されれば有効
firewallを解放
firewall-cmd --add-service=ftp --permanent
firewall-cmd --add-port=4000-4029/tcp --permanent
firewall-cmd --reload
OCIのファイアウォール設定も上記ポートを開放する