概要
Ubuntu MATE Ver16.04.4にvsftpdをインストールする方法を記載する。
目次
vsftpdのインストール
sudo apt install -y vsftpd
vsftpdの設定
sudo vi /etc/vsftpd.conf
下記のとおり#を削除して設定を有効にする
25行目:匿名ユーザのアクセスを拒否する
anonymous_enable=NO
31行目:ファイルシステムを変更するFTPコマンドを許可する
write_enable=YES
99行目:アスキーモードのアップロードを許可する
ascii_upload_enable=YES
100行目:アスキーモードのダウンロードを許可する
ascii_download_enable=YES
114行目:設定したディレクトリより上層への移動を禁止する
chroot_local_user=YES
123行目:YESの場合、リストアップされたユーザはchrootの対象から除外される
chroot_list_enable=YES
125行目:リストアップのファイルの場所を指定する
chroot_list_file=/etc/vsftpd.chroot_list
131行目:サブフォルダを含む一括アップロード・ダウンロードを出来るようにする
ls_recurse_enable=YES
アップロード時のパーミッション書き換え設定
35行目 : アップロード時のパーミッション書き換え設定
#local_umask=022
↓「#」を削除して、有効化し「000」を設定する
local_umask=000
[その他の設定例]
ディレクトリ=777、ファイル=666の場合
local_umask=000
ディレクトリ=700、ファイル=600の場合
local_umask=077
ディレクトリ=755、ファイル=644の場合
local_umask=022
ディレクトリ=775、ファイル=664の場合
local_umask=002
下記の通り最終行に設定を新規追加する
最終行:ルートディレクトリを指定する
local_root=/var/www/html
※スペース不要
※指定しない場合はユーザーのホームディレクトリ直下にななります。
※public_htmlを指定した場合で、且つ当該ディレクトリがないとログインできないので注意
最終行:seccomp filter をオフを追記する
seccomp_sandbox=NO
アクセス許可をするユーザを設定する
sudo vi /etc/vsftpd.chroot_list
新規(空)ファイルとして開かれます。
今回は例として「lightbox」ユーザを1行追加する。
vsftpの再起動
sudo service vsftpd restart
サービスが開始しているかどうかの確認
sudo service vsftpd status
vsftpdの動作確認
telnet localhost 21
※「quit」で切断して終了