さくらVPSにvsftpのインストールと設定
vsftpをyumでインストール
yum install vsftpd
■自動起動設定(サービスに登録)
chkconfig vsftpd on
■vsftpd設定
vi /etc/vsftpd/vsftpd.conf
■vsftpd.confファイルを編集する
匿名ユーザはログインさせない anonymous_enable=NO アスキーモードでアップロード・ダウンロードを許可する ascii_upload_enable=YES ascii_download_enable=YES ホームディレクトリのみ参照するユーザー設定 chroot_list_enable=YES ホームディレクトリのみ参照するユーザリストファイル chroot_list_file=/etc/vsftpd/chroot_list ディレクトリを削除可能、サブフォルダを含む一括アップロード・ダウンロードを許可 ls_recurse_enable=YES ■これ以降は任意で「追加」 ユーザが打ち込んだftpコマンドをログに残す(下記2つ) xferlog_std_format=NO log_ftp_protocol=YES タイムスタンプ時間を日本時間に合わせる use_localtime=YES パッシブモードを利用にする pasv_promiscuous=YES パッシブモード利用時のポート範囲 pasv_min_port=50000 pasv_max_port=50030 /etc/vsftpd/user_listのユーザーだけを許可 userlist_deny=NO ユーザーの初期アクセスディレクトリ (ここに書いたディレクトリが最初に開く。) local_root=/var/www/html ユーザのホームディレクトリより、上位のディレクトリへの移動を不許可に chroot_local_user=YES
■ユーザーを作成
ユーザー作成 sudo adduser --shell /sbin/nologin --home /var/www ftpusr パスワード設定 sudo passwd ftpusr New UNIX password:(パスワード入力は非表示) パスワード確認 Retype new UNIX password:(パスワード入力は非表示)
■FTPアクセスを許可するユーザを設定します。
vi /etc/vsftpd/user_list
開いたら、先ほど作ったユーザー名「ftpusr」をケツに追加します。
■ホームディレクトリより上層にアクセス出来るユーザを設定
設定しなければ、空のファイルでok
vi /etc/vsftpd/chroot_list
■iptableにFTP設定を追加
vi /etc/sysconfig/iptables
以下を追加し20,21,50000:50030を通信を許可する
-A INPUT -p tcp -m tcp --dport 20 -j ACCEPT -A INPUT -p tcp -m tcp --dport 21 -j ACCEPT -A INPUT -p tcp -m tcp --dport 50000:50030 -j ACCEPT
■iptablesの再起動(設定反映)
service iptables restart
■vsftpdの起動
/etc/rc.d/init.d/vsftpd start
■550エラーが出る場合は先ほど作ったユーザーに変更
chown -R ftpusr /var/www
Comment