[Ubuntu] vsftpdのインストールと設定

vsftpdのインストール

$ sudo apt install -y vsftpd

vsftpd.confの設定

設定項目は下記の記事を御覧ください。CentOS用の記事ですが設定は一緒です。Ubuntuのvsftpd.confはCentOS版で変更するところの多くがデフォルトで変更されている状態になっています。よって、あまり変更するところはないです。

viでvsftpd.confを開きます。

$ sudo vi /etc/vsftpd. conf

デフォルトで書き込みが不可になっているので、このままだとFTPでファイルをアップロードしたり削除したりができません。下記の部分を変更し、許可しておきます。

# write_enable=YES
  ↓
write_enable=YES

[Linux] FTPサーバー vsftpd の設定(vsftpd.conf

vsftpdの再起動

$ sudo service vsftpd restart

vsftpdの状態確認

$ sudo service vsftpd status

FTP用portの開放

portの確認

$ sudo ufw status

(表示内容)
Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
22 (v6)                    ALLOW       Anywhere (v6)
80                         ALLOW       Anywhere
80 (v6)                    ALLOW       Anywhere (v6)

20 / 21 番ポートの開放

$ sudo ufw allow 20
$ sudo ufw allow 21

#リロード
$ sudo ufw reload

#反映されたか確認
$ sudo ufw status

パッシブモード用のポート開放

上記の設定を行った後にFilezillaでFTP接続を試みると、ログインはOKとなり、その後「ディレクトリリストを取得中」という表示のままそこから進まないエラーが発生しました。

ホームディレクトリのパスは表示されているので、FTPの接続は大丈夫なようです。

パッシブモードで使うときには、パッシブモード用のポートの開放と、vsftpd.confの設定が必要でした。

$ sudo ufw allow ftp
$ sudo ufw allow 60000:60050/tcp

$ sudo vi /etc/vsftpd.conf を実行し、一番下に下記を追記します。

pasv_enable=YES
pasv_min_port=60000
pasv_max_port=60050


Author: webmaster