Neo's Blog

首頁 相本 討論 書籤

分類目錄
本站日誌 (51)
碎碎唸啦 (173)
網站架設 (84)
程式設計 (161)
軟體使用 (69)
電子商務 (126)
經營奇想 (48)
基金理財 (11)
聰明消費 (87)
電影心得 (47)
開放原碼 (16)
工作記錄 (2)
毛毛小記 (9)
就是不同 (2)




歷史資料
 




May 25, 2006
讓 vsftp 預設使用者不能離開 home 目錄

號稱安全性高的 vsftp 預設是所有使用者都能離開 home 目錄,不論是什麼樣的考量都造成管理上的不便。

其實在只要 vsftpd.conf 裡面加一行:

chroot_local_user=YES

這樣 vsftpd.chroot_list 就變成「允許」離開 home 目錄的列表了。

 
由 Neo 發表於 May 25, 2006 01:17 AM 收進你的MyShare個人書籤  

「安全性高的 vsftp 預設是所有使用者都能離開 home 目錄?」

是「都能」還是「都不能」?因為看到後面就變成可以了。

請 Neo 大賜教。


jaceju 發表於 May 25, 2006 09:27 AM

預設是「都能」離開 home,也就是 chroot_local_user 預設是 NO。

所以如果要把user 鎖在 home的話,每增加一個 user ,vsftpd.chroot_list 也要加一個人。

說實在話,我實在看不出來這個預設值安全在哪裡?


Neo 發表於 May 25, 2006 11:49 AM

說真的我也看不懂Neo大大寫的意思耶...:P

>vsftp 預設是所有使用者"都能"離開 home 目錄

>這樣 vsftpd.chroot_list 就變成「允許」離開 home 目錄的列表了。

這兩句差別在哪啊??


好手 發表於 May 25, 2006 12:07 PM

初初看我也不明白嗯..
多看幾遍我想應該是這個意思

chroot_local_user=YES // 是決定可否離開root, YES=可
vsftpd.chroot_list // 需要變動(反置)root權限的user列表

而在YES的情況下, 要容許特例用戶離開root,
就要將user設置入vsftpd.chroot_list這個列表

而在NO的情況下, 要"不"容許特例用戶離開root,
就要將user設置入vsftpd.chroot_list這個列表

vsftpd.chroot_list列表的作用就是要將用戶離開root的權限設置為跟chroot_local_user相反的值.

不知是不是這個意思...


IcySora 發表於 May 25, 2006 01:54 PM

IcySora:

解釋的真清楚,就是這樣沒錯。^^
真的對不起大家,最近太忙,文章都沒時間寫了,寫出來還讓大家看不懂,真是該打屁股。Orz


Neo 發表於 May 26, 2006 12:24 PM

文字有點饒舌,所以大家比較不清楚.
vsftpd.chroot_list這是一個列表,裡面紀錄著誰"不可以"離開home,反之,如果要讓該使用者"可以"離開home,就不要把帳號加進去這檔案.


Vamco Jen 發表於 May 26, 2006 12:25 PM

Vamco:

您說的是 vsftp 預設的狀況,但是這個列表的用處是可以調整的。

所以照 IcySora 的說法會比較清楚,vsftpd.chroot_list 是設定 chroot_local_user 的反向列表(或叫例外列表)


Neo 發表於 May 26, 2006 12:28 PM

chroot_list_enable=NO時chroot檔案功能會被關掉。
chroot_list_enable=YES時chroot_list_file=/etc/vsftpd.chroot_list才有效用。
只不過效用會被chroot_local_user影響

chroot_local_user=YES時vsftpd.chroot_list名單裡的人不會被鎖在家目錄,其他人會。

chroot_local_user=NO時vsftpd.chroot_list名單裡的人會被鎖在家目錄,其他人不會。


Eliot 發表於 May 31, 2006 02:30 AM

這是 vsftpd 的問題,它設置這個開關會造成截然相反的情況。

chroot_list_enable=NO (預設值)時,chroot_list_file 裡頭的使用者會被限制住只能在自己的目錄;
但 chroot_list_enable=YES 時, chroot_list_file 卻變成,裡頭的使用者可以跑來跑去。


JC 發表於 November 7, 2006 03:54 PM

補充一下,如果要讓指定使用者進入的 home 目錄的話,可以修改 /etc/passwd。


Neo 發表於 February 24, 2007 11:05 AM

A=chroot_local_user,
B=chroot_list_enable,
chroot_list內容為"midas",
"heidi"為另一個不列入chroot_list的有效帳號
實驗如下:
| midas | heidi
-------------------------------------------
#A(mark A), B=YES | X | O
-------------------------------------------
A=YES, B=YES | O | X
-------------------------------------------
A=YES, #B | X | X
-------------------------------------------
#A, #B | O | O

結論:

If activated, you may provide a list of local users who are placed in a chroot() jail in their home directory upon login. The meaning is slightly
different if chroot_local_user is set to YES. In this case, the list becomes a list of users which are NOT to be placed in a chroot() jail.

以上是chroot_user_list的部分原文, 意思是說如果單純把chroot_user_list=YES而#chroot_local_user(被mark掉), 則chroot_list檔案內列名的user將會被限制在家目錄, 但是如果同時chroot_local_user也設定為YES, 則所有的user都會被限制在家目錄, 反而chroot_list檔案內列名的user除外.


midas 發表於 April 16, 2008 04:24 PM
發表迴響  
(*星號開頭為必填欄位)











(請輸入您看到的數字,看不到請按右鍵->顯示圖片)


記住我的資訊?







Copyright 2005 Neo's Blog All rights reserved.