今回は色々あるFTPサーバーの中でもメジャーなVsftpdを入れてみた時の覚え書きです。
1.vsftpdのインストール
$ sudo apt-get install vsftpd
2.設定ファイルを開き設定
以下のように変更。(設定は色々あるでしょうから1例です)
$ sudo vi /etc/vsftpd.conf
listen=NO
listen_ipv6=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
user_config_dir=/etc/vsftpd/user_conf
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
seccomp_sandbox=NO
allow_writeable_chroot=YES
保存したらサーバーを起動
$ sudo service vsftpd start
または再起動
$ sudo service vsftpd restart
止めるのは
$ sudo service vsftpd stop
3.FTP専用のローカルユーザーを追加
FTPでアクセスするためのローカルアカウントを作成します。
新たなユーザーは、Raspbianにはルートログインは出来ないけれど、FTPにはログイン可能な専用ユーザーでなければならないので、まずは作ります。
ユーザー名:yamada
仮のhomeフォルダ:/home/yamada
とすると。
$ sudo adduser –shell /usr/sbin/nologin –home /home/yamada yamada
Adding user `yamada’ …
Adding new group `yamada’ (1003) …
Adding new user `yamada’ (1003) with group `yamada’ …
Creating home directory `/home/yamada’ …
Copying files from `/etc/skel’ …
Enter new UNIX password: (パスワード入力)
Retype new UNIX password:passwd:(パスワード再入力)
password updated successfully
Changing the user information for yamada
Enter the new value, or press ENTER for the default
Full Name []: (エンターで次へ)
Room Number []: (エンターで次へ)
Work Phone []: (エンターで次へ)
Home Phone []: (エンターで次へ)
Other []:Is the information correct? [Y/n] y
続いて/usr/sbin/nologinのFTPログインを許可するように設定します。
$ sudo vi /etc/shells
開いたら最後の行に以下を追加
/usr/sbin/nologin
FTPにユーザーを追加を設定
最初に作ったFTPの設定ファイルvsftpd.confに書いてあるように、ユーザーリスト /etc/vsftpd.user_list にユーザーを書くとFTPログイン出来るようになる。
$ sudo vi /etc/vsftpd.user_list
開いたら次の一行(ユーザー名)を書く。
yamada
保存する。
同様にアカウントyamadaのホームディレクトリの場所を書いたユーザー毎の設定ファイルを以下のディレクトリ
/etc/vsftpd/user_conf に作ります。
$ sudo vi /etc/vsftpd/user_conf/yamada
local_root=/var/www/yamada
保存する。
しかしこの /var/www/yamada フォルダはまだ存在しないしアクセス権が設定されてないので設定します。
$ cd /var/www/
$ sudo mkdir yamada
$ sudo chown yamada:yamada yamada
FTPを再起動。
$ sudo service vsftpd restart
これでFTPが使えます。
FTPの場合外部からのアクセス目的でしょうからポートを空けて置くことを忘れずに!!
sambaによる共有フォルダへのアクセスは、また別の機会で...