網上的文章好難懂啊。。隻想要簡單粗暴,弄好能用就行啊,複雜的以後研究不行嗎。。。折騰好久,其實弄出來能用不就這麼點内容嗎。。。
本文在Ubuntu Server 14.04 amd64系統測試。
安裝ftp
配置vsftpd.conf
看網上說加一行“pam_service_name=vsftpd”,我看我這個配置檔案本來就有,就不管了。
添加ftp使用者
調整檔案夾權限
這個是避免“500 OOPS: vsftpd: refusing to run with writable root inside chroot()”
這樣登入之後會看到data檔案夾,雖然稍麻煩,原因不表了。。查資料這麼辛酸已經不易。。
改pam.d/vsftpd
這時候直接用useradd的帳号登入ftp會530 login incorrect
注釋掉
重新開機vsftpd
這時就可以用剛才建的ftpuser這個使用者登入ftp了,看到的是local_root設定的/home/ftp,并且限制在該目錄。
關于使用者通路檔案夾限制
首先,chroot_list_enable好了解,就是:是否啟用chroot_list_file配置的檔案,如果為YES表示chroot_list_file配置的檔案生效,否則不生效;
第二,chroot_list_file也簡單,配置了一個檔案路徑,預設是/etc/vsftpd.chroot_list,該檔案中會填入一些賬戶名稱。但是這些賬戶的意義不是固定的,是跟配置項chroot_local_user有關的。後一條中說明;
第三,chroot_local_user為YES表示所有使用者都*不能*切換到主目錄之外其他目錄,但是!除了chroot_list_file配置的檔案列出的使用者。chroot_local_user為NO表示所有使用者都*能*切換到主目錄之外其他目錄,但是!除了chroot_list_file配置的檔案列出的使用者。也可以了解為,chroot_list_file列出的“例外情況”的使用者。
如果用戶端登入時候提示“以pasv模式連接配接失敗”
編輯/etc/vsftpd.conf
最後添加
然後再重新開機vsftpd服務。