概要
この後に書く予定の記事でShibbolethでWordpressをSAML連携してみたで記載する予定のスピンオフ記事。
Shibboleth連携のプラグインをそのままSCPでサーバへ転送しただけじゃ面白くないので、今までのキャリアで全然触れてこなかったftpを利用してみて、ファイル転送してみようじゃないかという記事です。
使ったもの
サーバ
AWS EC2インスタンス t2.micro
サーバOS
CentOS 7.5.1804
パッケージ
vsftpd 3.0.2-25
クライアント
MAC Mojave 10.14.3
設定の流れ
1 FTPパッケージの追加
2 FTP用のユーザ追加/パスワード変更
3 FTPの初期設定
4 FTP接続用のユーザ登録
設定内容
1 FTPパッケージの追加
パッケージ追加
yum install vsftpd -y
2 FTP用のユーザ追加/パスワード変更
ユーザー追加/パスワード変更
useradd ftp-user
passwd ftp-user
3 FTPの初期設定
前提条件:
・セキュリティグループでTCP 21ポート(FTPクライアントからFTPサーバに対してコントロールコネクションを貼る際に利用するポート番号)を開けておく
バックアップ取得/設定ファイル編集
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.org
vi /etc/vsftpd/vsftpd.conf
編集内容
tcp_wrappers=NO #アクセス制御しない
pasv_enable=YES #パッシブモードを許可する
pasv_min_port=60001 #パッシブモードで利用するポート番号
pasv_max_port=60010 #パッシブモードで利用するポート番号
force_dot_files=YES #ドットから開始するファイルを含める
use_localtime=YES #ファイルのタイムススタンプはサーバ上のものを使用
user_config_dir=/etc/vsftpd/user_conf #ユーザー接続設定
chroot_local_user=NO #FTPで接続するユーザーが上位ディレクトリにアクセスすることも許可する
chroot_list_enable=YES #ファイルで指定されたユーザーのみchrootを除外される
chroot_list_file=/etc/vsftpd/chroot_list #アクセスを許可するユーザーを指定する
4 FTP接続用のユーザ登録
アクセス許可ユーザーの指定(ファイル作成)
vi /etc/vsftpd/chroot_list
chroot_listファイルの内容
ftp-user
FTPユーザー用のアクセス制御ファイル作成
mkdir /etc/vsftpd/user_conf
vi /etc/vsftpd/user_conf/ftp-user
ftp-userファイルの内容
local_root=/var/www/html/wordpress/wp-content
ファイル作成後にサービス再起動
サービス再起動
systemctl restart vsftpd
systemctl status vsftpd
無事にFTPクライアントソフトから接続できるようになったことを確認しました。