首先呢,當然就是安裝套件囉
$ sudo apt-get install vsftpd
OK,這樣就安裝完了,接下來就到了設定的步驟了。
有幾個檔案是vsftpd的相關設定檔:
/etc/vsftpd.conf
/etc/vsftpd.chroot_list
先說/etc/vsftpd.conf,這是vsftpd的主要設定檔,檔案中其實已有相當詳細的註解了。
所以在此僅提出幾個常用的設定
特別注意:修改設定檔前請先備份
# Allow anonymous FTP? (Beware – allowed by default if you comment this out).
anonymous_enable=NO
是否允許任意使用者連線,由於我只想給自己使用,所以設為NO
# Uncomment this to allow local users to log in.
local_enable=YES
是否允許本機使用者登入FTP,我使用自己的帳號登入,所以設為YES
# Uncomment this to enable any form of FTP write command.
write_enable=YES
是否開放寫入的權限,我的需求是下載及上傳資料,所以需要寫入的權限,設為YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
這三個就有趣了,所以一起上XD
PS:chroot,就是讓使用者變換根目錄的功能,在登入FTP Server時,預設根目錄為使用者的home directory
chroot_local_user=YES
chroot_list_enable=YES
這樣的設定,讓所有使用者無法變換根目錄,除了/etc/vsftpd.chroot_list中所列的使用者
user_config_dir=/etc/vsftpd/user_config
這樣的設定,讓所有使用者都在家目錄,除了 /etc/vsftpd/user_config 中所列的使用者 會在 local_root 所指定的目錄
Q: 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
A:
所以你必須把該使用者的家目錄,可寫入的權限拿掉才能正常的登入
chmod a-w /home/user
你說沒有寫入的權限,那別人怎麼上傳檔案呀?
你可以在它的家目錄底下再幫它建個目錄,有寫入的權限即可。
至於說怎麼拿掉這個限制,沒辦法,官方設計的就是這樣。
reference: http://mybeauty.pixnet.net/blog/post/26400610-ubuntu-vsftp—ftp-server%E8%BC%95%E9%AC%86%E6%9E%B6-
[linux] vsftpd
分類:linux