FTPツール(vsftp)の導入
「vsftp」というパッケージをyumでインストールできます。
[html]
sudo yum install -y vsftpd
[/html]
自動起動の設定をします。
[html]sudo chkconfig vsftpd on
sudo chkconfig –list vsftpd
vsftpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[/html]
設定ファイル(vsftpd.conf)の編集
設定ファイルは「/etc/vsftpd/vsftpd.conf」を設定する。
バックアップの作成
[html]
sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd_201504.conf
[/html]
設定ファイルを編集する。
[html]
sudo vi /etc/vsftpd/vsftpd.conf
[/html]
12行目 匿名ユーザーのアクセスを禁止します
[html]
anonymous_enable=YES
↓
anonymous_enable=NO
[/html]
22行目 ファイルのパーミッションを644になるようにする
[html]
local_umask=022
↓
local_umask=002
[/html]
81行目 アスキーモードを許可する
[html]
ascii_upload_enable=NO
ascii_download_enable=NO
↓
ascii_upload_enable=YES
ascii_download_enable=YES
[/html]
85行目 FTPログイン時にバージョン情報を表示させない
[html]
#ftpd_banner=Welcome to blah FTP service.
↓
ftpd_banner=Welcome to blah FTP service.
[/html]
97行目 chroot_list_enableをYESにする
[html]
chroot_list_enable=NO
↓
chroot_list_enable=YES
[/html]
99行目 ホームディレクトリより上の階層への移動を不許可
[html]
chroot_list_file=/etc/vsftpd/chroot_list
#下記内容を追記
chroot_local_user=YES
[/html]
105行目 サブフォルダごとまとめて操作できるようにする
[html]
ls_recurse_enable=YES
[/html]
ファイルの最後に下記内容を追記します。
[html]
#/etc/vsftpd/user_listに記述したユーザーのみログイン許可する
userlist_deny=NO
#タイムスタンプをローカルの時間にする
use_localtime=YES
#PASVのポート範囲を指定
pasv_enable=YES
pasv_min_port=50000
pasv_max_port=50030
#初期アクセス時のフォルダを指定
local_root=/var/www/html
[/html]
これで設定ファイルの編集は完了です。
99行目に記述した「chroot_list」というファイルを作成する。
ファイルは何も記述せず空でOK。
[html]
sudo vi /etc/vsftpd/chroot_list
[/html]
ユーザーの作成
FTPにログインするためのユーザーを作成
[html]
sudo adduser –home /var/www –shell /sbin/nologin user名
[/html]
ユーザを作成したら、パスワードを設定。
[html]sudo passwd user名
[/html]
この作成したユーザーをvsftpdのユーザーリストに追加します。
「/etc/vsftpd/user_list」のファイルの最後に追加したユーザを追加する。
[html]
sudo vi /etc/vsftpd/user_list
[/html]
これで設定は完了です。
最後に再起動しましょう。
[html]
sudo /etc/rc.d/init.d/vsftpd restart
[/html]
IPテーブルにFTPの設定を追加
FTPの設定が終わったら、IPテーブルのポートの設定FTPのポートを追記します。
下記コマンドで追加できます。
[html]
sudo iptables -A INPUT -p tcp -m tcp –dport 20 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp –dport 21 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp –dport 3306 -j ACCEPT
[/html]
追加したら、設定内容を保存して再起動しておきましょう。
[html]
#設定を保存
sudo service iptables save
#再起動
sudo service iptables restart
[/html]
FTPに接続
FTPに接続する。
サーバはVPSサーバのIPアドレス、ユーザーとパスワードはさきほど設定したパスワードで接続できます。
ディレクトリーの作成で550 Create directory operation failed. が出る。
アクセス権限確認
[html]
li -l
[/html]
とりあえず権限を777にして回避(ホントはダメだけどね。)
[html]
chmod 777 パーミッション
[/html]
これでディレクトリー作成もアップロードも出来た。
参考