今回行ったこと
aws上にあるubuntuに対して、vsftpdをインストールして
ネットワーク越しにファイル転送ができるようにしました。
今回行わなかったこと
- WFの設定
- ftps化
※接続については、awsのセキュリティグループにてIP制限を行っているため
セキュリティの考慮は厳密に行っていません
導入手順
vsftpdのインストール
今回はvsftpdを採用しました。
既にaptが利用できる状態だったので、そのまま利用しました。
sudo apt install vsftpd
vsftpd -v
vsftpd: version 3.0.5
FTP用ユーザーの作成
無事、インストールができたことを確認したので
FTP用のLinuxユーザーを作成します。
sudo useradd -m hoge
sudo passwd hoge
起動と自動起動の設定
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
● vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2020-05-19 12:55:57 JST; 18min ago
Main PID: 8044 (vsftpd)
Tasks: 1 (limit: 9479)
CGroup: /system.slice/vsftpd.service
mq8044 /usr/sbin/vsftpd /etc/vsftpd.conf
vsftpd.confの設定
サービスがアクティブになることを確認したので、
設定を進めていきます。
今回は、FTPを利用できるユーザーの制限と
ディレクトリの閲覧に関する制限、パッシブモードの設定のみ行なっています。
# ログインディレクトリを変更
chroot_local_user=YES
# FTP許可をホワイトリスト方式にする
userlist_deny=NO
# ログイン時のディレクトリを指定
local_root=/home/hoge
# ファイルアップロード時のパーミッションを指定
local_umask=002
allow_writeable_chroot=YES
# パッシブモード
pasv_enable=YES
# パッシブモードのポートに50000~60000を割り当てる(※適宜読み替えてください)
pasv_min_port=50000
pasv_max_port=60000
FTP接続できるユーザーをホワイトリストで指定します
vsftpd.user_listを作成して
中身には「hoge
」とだけ記載しました。
再起動
設定を反映させるために再起動します。
sudo systemctl restart vsftpd
ftp localhost
してみて接続が確認できました。
ログについては、デフォルトだと/var/log
に出力されるようです。