Raspberry Piの設定【FTPサーバ(vsftpd)の設定】

 久々のRaspberry Piネタとなりますが、データの受け渡しにFTPを使いたくなったので、設定方法を書いておきたいと思います。Raspberry PiらしくPythonにこだわりたく色々試したい時には、pyftpdlibも良いと思いますが、aptでインストールできるvsftpdを入れることにします。

 

手順1 FTPサーバのインストール

$ sudo apt-get upgrade && sudo apt-get update

$ sudo apt-get install vsftpd

f:id:yamaryu0508:20141202090749p:plain

 

手順2 「/etc/vsftpd.conf」の設定

 NTPデーモンの設定ファイルである/etc/vsftpd.confを編集していきます。今回はユーザpi使えるようになる最小限の設定を行います。

$ sudo vi /etc/vsftpd.conf

# (変更箇所のみ記載)
# anonymousでのFTPログイン
anonymous_enable=NO #anonymousユーザを禁止(デフォルトはYES)

# ユーザ権限設定
local_enable=YES #ローカルユーザを有効に(デフォルトはコメントアウト)
write_enable=YES #書き込み可能に(デフォルトではコメントアウト)
local_umask=022   #書き込んだ際のパーミッションのマスク(デフォルトではコメントアウト)

# ASCIIモードの設定
ascii_upload_enable=YES #アスキーでアップロードを有効(デフォルトではコメントアウト)
ascii_download_enable=YES #アスキーでダウンロードの有効(デフォルトではコメントアウト)

# ユーザ権限
chroot_local_user=YES #ローカルユーザの制限(デフォルトではコメントアウト)
chroot_list_enable=YES  #リストにより制限を行う(デフォルトではコメントアウト)
chroot_list_file=/etc/vsftpd.chroot_list #リストのパス

f:id:yamaryu0508:20141202102431p:plain

f:id:yamaryu0508:20141202102443p:plain

f:id:yamaryu0508:20141202102501p:plain

 

手順3 「/etc/vsftpd.chroot_list」の設定

 ユーザ権限の設定ファイルである/etc/vsftpd.chroot_listを編集していきます。今回はユーザpiを追加します

$ sudo vi /etc/vsftpd.chroot_list

pi

f:id:yamaryu0508:20141202101913p:plain

 

手順4 vsftpdをリスタート

 ここまで設定したらサービスをリスタートします。

$ sudo service vsftpd restart

f:id:yamaryu0508:20141202102030p:plain

ここでsudo reboot再起動しておきます。

 

手順5 vsftpd起動状態の確認

 vsftpd起動状況を確認します。

$ ps agx | grep vsftpd

f:id:yamaryu0508:20141202102038p:plain

vsftpdのプロセスが常駐し、無事設定完了です。