Ⅷ. FTPサーバーの構築

 FTP(File Transfer Protocol)を利用してファイル送受信を行うために、セキュリティが高く安全性に優れたvsftpd(Very Secure File Transfer Protocol Daemon)を組み込みます。

1.vsftpdの導入

次のコマンドでvsftpdをインストールします。
sudo apt-get upgrade && sudo apt-get update
sudo apt-get install vsftpd

2.設定ファイルの編集

①/etc/vsftpd.confの編集

1)nanoエディターで編集します。
sudo nano /etc/vsftpd.conf
2)以下の部分を変更します。大半は行頭のコメントアウト記号#を外すだけです。
a)anonymousユーザーを禁止
    anonymous_enable=NO#anonymousユーザーを禁止に
b)ユーザー権限設定
    local_enable =YES#ローカルユーザーは有効に
    write_enable=YES#書き込み可能に
    local_umask=022#書き込みパーミッションのマスク
c)ASCIIモードの設定
    ascii_upload_enable=YES#ASCIIでのアップロードを有効に
    ascii_download_enable=YES#ASCIIでのダウンロードを有効に
d)ユーザー権限
    chroot_local_user=YES#ローカルユーザーを制限する
    chroot_list_enable=YES#リストによる制限を行う
    chroot_list_file=/etc/vsftpd.chroot_list  #リストのパス

②ローカルユーザー制限リストの作成

1)ホームディレクトリより上の階層に移動できるローカルユーザーを設定します。
sudo nano /etc/vsftpd.chroot_list
2)利用者は改行して列挙します。ここではpiだけを登録します。
pi
 (参考)
    ホスト名やIPアドレス単位でのアクセス制限は、/etc/hosts.allowと/etc/hosts.denyで行います。
3)設定を有効にするためにvsftpdをリスタートします。
sudo service vsftpd restart


2.動作確認

1)リブートします。
 (参考) vsftpdはマシン起動時に自動起動するようになっているので特に指定は不要です。
sudo reboot
2)『Ⅲ.リモート環境の準備』でインストール済みのWinSCPを起動すると、次のようなログイン画面が表示されます。
 すでに転送プロトコルには[SFTP]、ポート番号には22が設定されています。
3)ホスト名にサーバーアドレスを、さらにユーザー名とパスワードを入力して[保存]をクリックします。
 「セッションの保存名」ダイアログが表示されるので、保存名をRaspberryPiに変えて[OK]で保存しましょう。
4)RaspberryPiのサイトが登録されました。[ログイン]ボタンをクリックしてください。
  初回の接続時には接続確認メッセージが表示されるので[はい]と応えます。
5)これでRaspberry Piと接続することができました。
  画面左には手元のWindows PC、右にはRaspberry Pi側のディレクトリーの内容が一覧表示されています。
 視覚的に分かりやすい画面を利用して、ドラッグ&ドロップでファイルやフォルダーをサーバーとクライアント間で移動させたり、フォルダーをクリックして階層を移動することが可能になりました。とても便利で強力な機能なので、誤操作をしないように気をつけて利用してください。