1. 程式人生 > >vsftpd新增使用者並限制目錄(指定使用者訪問指定目錄)

vsftpd新增使用者並限制目錄(指定使用者訪問指定目錄)

遇到一個例子要求為特定的使用者指定一個轉用FTP上傳目錄;
LINUX裝FTP我一般選的是vsftp,一般做的都是基於使用者的訪問,簡單修改幾個引數,建立一個chroot_list檔案 就可以了,一般目錄都是在/home下面,今天遇到的例子卻是指定在其他的目錄,在網上找了些資料,測試如下:
使用者名稱:boy
要求訪問/var/www/bbs/hello 這個目錄;上傳下載;

#useradd -s /sbin/nologin boy
#vi /etc/vsftpd/vsftp.conf
新增 user_config_dir=/var/ftp
儲存退出

#mkdir -p /var/www/bbs/hello

#vi /var/ftp/boy
新增如下

local_root=/var/www/bbs/hello

#chmod 777 /var/www/bbs/hello

重啟vsftpd 就實現訪問了
===================================================================
還可以在建立帳號時使用
#useradd -d /path/dir -M xx 
如要為xiaoming指定一個/usr/www/bbs/image的目錄

#useradd -d /usr/www/bbs/image -M xiaoming

需要注意的是

chroot_local_user=YES       #將所有本地使用者限制在自家目錄中,NO則不限制。下面的指令是指出在所有本地使用者中例外於

                                     #本 指令規定的使用者。
chroot_list_enable=YES      #是否允許vsftpd讀取一個提供了使用者名稱的檔案,如果chroot_local_user指令是YES的話,
                                     #則該檔案中的使用者不會被限制在自家主目錄中,如果chroot_local_user是NO的話,
                                     #則這些使用者會被限制。
chroot_list_file=/etc/vsftpd.chroot_list