1)vftpdをインストール
$ sudo apt-get install vsftpd -y
2)configファイルの編集
$ sudo vi /etc/vsftpd.conf
ファイルの中身の以下を書き換えた。
行数はバージョンよって少し異なるようだ。
▼25行目:匿名ユーザのアクセスを拒否する
anonymous_enable=NO
▼31行目:ファイルシステムを変更するFTPコマンドを許可する
write_enable=YES
▼99行目:アスキーモードのアップロードを許可する
ascii_upload_enable=YES
▼100行目:アスキーモードのダウンロードを許可する
ascii_download_enable=YES
▼120行目:設定したディレクトリより上層への移動を禁止する
chroot_local_user=YES
▼121行目:YESの場合、リストアップされたユーザはchrootの対象から除外される
chroot_list_enable=YES
▼125行目:リストアップのファイルの場所を指定する
chroot_list_file=/etc/vsftpd.chroot_list
▼131行目:サブフォルダを含む一括アップロード・ダウンロードを出来るようにする
ls_recurse_enable=YES
▼最終行に追加:ルートディレクトリを指定する
local_root =
※指定しない場合はユーザーのホームディレクトリ直下になる。
今回は/home/shareに来るようにした。
▼最終行に追加:seccomp filter をオフを追記する
seccomp_sandbox=NO
3)アクセス許可するユーザを設定する
$ sudo vi /etc/vsftpd.chroot_list
ファイルに1ユーザ名1行で記載してゆく。
当然ながら、サーバにローカルアカウントのないユーザは認証されない。
ここに記載されたローカルユーザでFTPサーバにアクセスする。
4)vsftpdを再起動する
$ sudo service vsftpd restart
5)FTPサーバが動作しているか確認する
$ telnet localhost 21
Trying ::1...
Connected to localhost.localdomain.
Escape character is '^]'.
220 (vsFTPd 3.0.3)
上記の表示が出れば動作していることが確認できる。
FTPクライアントソフトを使う前に、軽くWebブラウザでアクセスしてみた。
認証をクリアすると、
うん。
動いているね。
6)FTPサーバを自動起動する設定
$ sudo systemctl enable vsftpd.service
ちなみに、自動起動を解除したい場合は、
$ sudo systemctl disable vsftpd.service
となる。
0 件のコメント:
コメントを投稿