Ubuntuにvsftpdをインストールする

概要

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」で切断して終了

タイトルとURLをコピーしました