日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

vsftpd 配置:chroot_local_user与chroot_list_enable详解

發布時間:2025/7/25 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vsftpd 配置:chroot_local_user与chroot_list_enable详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文:?https://blog.csdn.net/bluishglc/article/details/42398811

?

搭建 ftp 服務器:?

?

修改ftp 的 更目錄:

?

Just add this line to?/etc/vsftpd.conf:

?

local_root=/

?

Essentially, you can set it to whatever directory you want. You also can use?$USER?in the path, it will be replaced with user's login.

?

So, if you set?local_root, for example, to?/home/$USER/ftp, then when a user connects to your server, he will be directed to the?ftp?folder in his home directory.

?

?

默認配置下,

匿名用戶登錄vsftpd服務后的根目錄是
/var/ftp/;

系統用戶登錄vsftpd服務后的根目錄是系統用戶的家目錄。

若要修改登錄
vsftpd
服務后的根目錄,

只要修改/etc/vsftpd/vsftpd.conf 文件即可

假設要把vsftpd
服務的登錄根目錄調整為
/vae/www/html,

可加入如下三行:
local_root=/var/www/html
chroot_local_user=YES
anon_root=/var/www/html

注解:(修改FTP目錄后也要修改FTP賬戶權限目錄 否則會出現無權限錯誤提示)

local_root 針對系統用戶;

anon_root 針對匿名用戶。

?

------------------------------------------------------------------------------

很多情況下,我們希望限制ftp用戶只能在其主目錄下(root dir)下活動,不允許他們跳出主目錄之外瀏覽服務器上的其他目錄,這時候我就需要使用到chroot_local_user,chroot_list_enable,chroot_list_file這三個選項了。以下是對三個配置項的解釋:?本文原文出處:?http://blog.csdn.net/bluishglc/article/details/42398811?嚴禁任何形式的轉載,否則將委托CSDN官方維護權益!

  • 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=YESchroot_local_user=NO
chroot_list_enable=YES1.所有用戶都被限制在其主目錄下 2.使用chroot_list_file指定的用戶列表,這些用戶作為“例外”,不受限制1.所有用戶都不被限制其主目錄下 2.使用chroot_list_file指定的用戶列表,這些用戶作為“例外”,受到限制
chroot_list_enable=NO1.所有用戶都被限制在其主目錄下 2.不使用chroot_list_file指定的用戶列表,沒有任何“例外”用戶1.所有用戶都不被限制其主目錄下 2.不使用chroot_list_file指定的用戶列表,沒有任何“例外”用戶


讓我們舉個例子:

?

假設有ftp1, ftp2兩個ftp用戶, 計劃讓ftp1用戶鎖定在主目錄下,不允許切換到其他目錄, 但是允許ftp2用戶自由切換目錄,則可以分如下兩種方式實現:

方式一:

令:
chroot_local_user=YES
chroot_list_enable=YES
/etc/vsftpd/chroot_list名單列表為:
ftp2
?
解釋:chroot_local_user=YES將所有用戶限定在主目錄內,chroot_list_enable=YES表示要啟用chroot_list_file, 因為chroot_local_user=YES,即全體用戶都被“限定在主目錄內”,所以總是作為“例外列表”的chroot_list_file這時列出的是那些“不會被限制在主目錄下”的用戶。
?
方式二:

令:
chroot_local_user=NO
chroot_list_enable=YES
/etc/vsftpd/chroot_list名單列表為:
ftp1

解釋:chroot_local_user=NO則所有用戶不被限定在主目錄內,chroot_list_enable=YES表示要啟用chroot_list_file, 因為chroot_local_user=NO,即全體用戶都“不被限定在主目錄內”,所以總是作為“例外列表”的chroot_list_file這時列出的是那些“會被限制在主目錄下”的用戶。

?

其他情況:

?

對于chroot_local_user和chroot_list_enable的組合還有這樣兩種情況:


chroot_local_user=YES
chroot_list_enable=NO

chroot_local_user=NO
chroot_list_enable=NO

當chroot_list_enable=NO時,就不再啟用chroot_list_file,此時就是單純的把全部用戶限定或不限定在主目錄下了!

補充:

  • 關于chroot_local_user的設置,通常我們傾向于:全局禁止跳出主目錄,使用chroot_list添加例外!即:使用Case 1的設置!
    • 匿名用戶默認的root是/var/ftp

總結

以上是生活随笔為你收集整理的vsftpd 配置:chroot_local_user与chroot_list_enable详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。