検証用に FTP サーバが必要になったので、CentOS で構築した際のメモ。
こちらのサイトがとても分かりやすかったので、参考にさせて頂きました。
vsftpd インストール
# yum -y install vsftpd
vsftpd.conf 設定
# vi /etc/vsftpd/vsftpd.conf anonymous_enable=NO <- 匿名ログイン禁止 ascii_upload_enable=YES <- コメントアウト:アスキーモードでの転送を許可 ascii_download_enable=YES <- コメントアウト:アスキーモードでの転送を許可 chroot_local_user=YES <- コメントアウト:chroot有効 chroot_list_enable=YES <- コメントアウト:chroot有効 chroot_list_file=/etc/vsftpd/chroot_list <- コメントアウト:chroot リストファイル指定 ls_recurse_enable=YES <- コメントアウト:ディレクトリごと一括での転送有効 local_root=public_html <- 最終行へ追記:ルートディレクトリ指定 use_localtime=YES <- 最終行へ追記:ローカルタイムを使う
chroot_list 設定
# vi /etc/vsftpd/chroot_list ftpuser <- chroot を適用しないユーザーを追加
ユーザアカウント作成
# useradd ftpuser # passwd ftpuser
ルートディレクトリ作成
# mkdir /home/ftpuser/public_html
SELinux 無効化
# setenforce 0 # getenforce ※Enforcing:SELinux が有効の場合、クライアントからの接続時に下記エラーが出力される場合があります。 500 OOPS: cannot change directory:/home/user1 500 OOPS: priv_sock_get_cmd 接続がリモート ホストによって閉じられました。
vsftpd 再起動
# /etc/rc.d/init.d/vsftpd start
vsftpd 起動設定
# chkconfig vsftpd on