====== FTPサーバーの設置 ======
Webサーバーのドキュメントルートなどにファイルを転送するためのFTPサーバーを設置します。vsftpdをインストールします。
インストール
$ sudo apt install vsftpd
\\
設定ファイルのバックアップ
$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.default
デフォルトの設定ファイルをバックアップしておきます(推奨)
===== 設定ファイルの編集 =====
設定ファイルを開きます。
$ sudo vim /etc/vsftpd.conf
14行目の「listen=NO」を「listen=YES」に変更してIPv4での接続を有効にします。\\
22行目の「listen_ipv6=YES」を「listen_ipv6=NO」にしてIPv6での接続を無効にします。\\
28行目の「local_enable=YES」がNOでないことを確認します。(ローカルユーザーアカウントのログインを許可)\\
31行目の「write_enable」の行頭の#を削除して有効化します。(ファイル変更のFTPコマンドの許可)\\
35行目の「local_umask=022」の#を削除して有効化します。(新規ファイルに適用するパーミッション値)\\
99行目の「ascii_upload_enable=YES」の#を削除して有効化します。(ASCIIによるアップロードの許可)\\
100行目の「ascii_download_enable=YES」の#を削除して有効化します。(ASCIIによるダウンロードの許可)\\
122行目の「chroot_local_user=YES」の#を削除して有効化します。(ログインディレクトリをそのユーザーのルートディレクトリに変更する)\\
123行目の「chroot_list_enable=YES」の#を削除して有効化します。(ユーザーのログインディレクトリの外側へのアクセスを禁止)\\
125行目の「chroot_list_file=/etc/vsftpd.chroot_list」の#を削除して有効化します。(上記規制の対象外のユーザーリスト)\\
131行目の「ls_recurse_enable=YES」の#を削除して有効化します。(ディレクトリ一括転送)\\
**パッシブモードで使用されるポート番号の範囲を指定しておきます。**
最終行に追記します。
pasv_min_port=60000
pasv_max_port=60100
\\
----
==== vsftpd.chroot_listへの登録 ====
vsftpd.chroot_listを作成、もしくは開きます。
$ sudo vim /etc/vsftpd.chroot_list
\\
ユーザー名を記述します。
peconet
\\
**ファイアーウォールを使用している場合**
ftp(21)のポートを開けます。
$ sudo ufw allow 21
「/etc/vsftpd.conf」で設定したパッシブモード用のポートを開けます。
$ sudo ufw allow 60000-60100/tcp
ufwを再読み込みします。
$ sudo ufw reload
\\
vsftpdの再起動
$ sudo systemctl restart vsftpd
\\
----
==== 備考 ====
vsftpdの自動起動設定
$ sudo systemctl enable vsftpd
\\
\\
----
===== Windowsからのアクセス =====
「FFFTP」や「WinSCP」などのクライアントから「192.168.3.10」でアクセスします。
==== FFFTPでの例 ====
* ホストの設定名:Ubuntu-V(任意)
* ホスト名:192.168.3.10
* ローカルの初期フォルダ:C:\Users\peconet(任意)
* ホストの初期フォルダ:/var/www/html/(任意)