天天看點

vsftpd 配置:chroot_local_user與chroot_list_enable詳解

很多情況下,我們希望限制ftp使用者隻能在其主目錄下(root dir)下活動,不允許他們跳出主目錄之外浏覽伺服器上的其他目錄,這時候我就需要使用到chroot_local_user,chroot_list_enable,chroot_list_file這三個選項了。

  • chroot_local_user #是否将所有使用者限制在主目錄,YES為啟用 NO禁用.(該項預設值是NO,即在安裝vsftpd後不做配置的話,ftp使用者是可以向上切換到要目錄之外的)
  • chroot_list_enable #是否啟動限制使用者的名單 YES為啟用  NO禁用(包括注釋掉也為禁用)
  • chroot_list_file=/etc/vsftpd/chroot_list #是否限制在主目錄下的使用者名單,至于是限制名單還是排除名單,這取決于chroot_local_user的值,我們可以這樣記憶: chroot_local_user總是一個全局性的設定,其為YES時,全部使用者被鎖定于主目錄,其為NO時,全部使用者不被鎖定于主目錄。那麼我們勢必需要在全局設定下能做出一些“微調”,即,我們總是需要一種“例外機制",是以當chroot_list_enable=YES時,表示我們“需要例外”。而”例外“的含義總是有一個上下文的,即,當”全部使用者被鎖定于主目錄“時(即chroot_local_user=YES),"例外"就是:不被鎖定的使用者是哪些;當"全部使用者不被鎖定于主目錄"時(即chroot_local_user=NO),"例外"“就是:要被鎖定的使用者是哪些。這樣解釋和記憶兩者之間的關系就很清晰了!

  對于chroot_local_user與chroot_list_enable的組合效果,可以參考下表:

chroot_local_user=YES chroot_local_user=NO
chroot_list_enable=YES

1.所有使用者都被限制在其主目錄下

2.使用chroot_list_file指定的使用者清單,這些使用者作為“例外”,不受限制

1.所有使用者都不被限制其主目錄下

2.使用chroot_list_file指定的使用者清單,這些使用者作為“例外”,受到限制

chroot_list_enable=NO 2.不使用chroot_list_file指定的使用者清單,沒有任何“例外”使用者

繼續閱讀