ちゃんと覚えておけよ?

忘れちゃいけない事のメモ、覚え書き

さくら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

*