CentOS7でvsftpdをインストールする

最近はあまり使われなくなったプロトコルのような気がします。こんばんわ、Web担当 神凪です。
使われないというのはセキュリティ的にアウトという意味ですね。 SFTPとかFTPSとかにするならともかく、FTPはFTPのまま使うこと多いですし。
NCE的には少なくともSFTPにしたいです。が、その下準備としてのFTPサーバ構築。

SSHと同じプロトコルを使うSCPがセキュリティ的には上なのですが、ここでは敢えてFTPサーバを構築してみます。

目標

  • FTPサーバを構築し、ファイル転送できる環境を作成する。

環境

  • CentOS 7.4

準備

手順

vsftpdのインストール

インストールはいつものyum。

yum -y install vsftpd

vsftpd設定

ただでさえ暗号化せずにファイルのやり取りを行うのですが、少しでも良い状態に持っていくための設定です。

vi /etc/vsftpd/vsftpd.conf

このファイルを、以下の内容になるように変更します。

anonymous_enable=NO
ascii_upload_enable=YES
ascii_download_enable=YES

chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

ls_recurse_enable=YES

chrootユーザの指定

chrootを適用しないユーザを指定します。
ちなみにchrootとは、指定フォルダをルートディレクトリとして機能させる効果があります。
ここでは各ユーザのホームディレクトリがルートのように見せかけるものになりますね。

vi /etc/vsftpd/chroot_list

このファイルにchrootを適用しない、つまりルートディレクトリからアクセスできるユーザを指定します。

# chroot を適用しない (上層への cd を許可する) ユーザーを追加
testuser

FTPサーバの起動・有効化

FTPサーバを起動し、自動起動するように設定します。

systemctl start vsftpd
systemctl enable vsftpd

おわりに

基本部分だけ設定していましたが、いかがでしたか?
ファイル転送では基本となるのがFTP、名前の通り「ファイル転送プロトコル」です。
セキュリティ対策が必要とはいえ、基本はしっかり押さえておきましょう。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください