1. 程式人生 > >原創:samba實現不同許可權進入不同資料夾

原創:samba實現不同許可權進入不同資料夾

要實現的效果: 共享資料夾:user1, user2, user3, group1, group2 1、使用者user1屬於組group1; 使用者user2屬於組group1和組group2;使用者user3屬於組group3 2、使用者user1 user2 user3可以各自進入自己的資料夾 3、使用者user1 user2可以進入資料夾group1;使用者user2 user3可以進入資料夾group2 在根目錄下新建資料夾smb資料夾及其下屬子資料夾 mkdir /smb cd /smb mkdir user1 user2 user3 group1 group2 新增使用者組 groupadd group1  group2
新增使用者 useradd -s /sbin/nologin -G group1 user1 useradd -s /sbin/nologin -G group1,group2 user2  useradd -s /sbin/nologin -G group2 user3 變更資料夾的使用者和使用者組 chown -R user1:user1 user1 chown -R user2:user2 user2  chown -R user3:user3 user3 chown -R :group1 group1 chown -R :group2 group2
變更資料夾訪問許可權 chmod 770 -R group1 group2
chmod 700 -R user1 user2 user3 在samba中新增使用者 pdbedit -a user1 pdbedit -a user2 pdbedit -a user3 開啟samba的配置檔案/etc/samba/smb.conf

[global] 部分內容如下:

[global]

        workgroup = WORKGROUP

        server string = Samba Server Version %v

        security = user

        passdb backend = tdbsam

        load printers = yes

        cups options = raw


還需要加入以下內容:
[user1]         comment = User1         path = /smb/user1         valid users = user1         read only = No [user2]         comment = User2         path = /smb/user2         valid users = user2         read only = No [user3]         comment = User3         path = /smb/user3         valid users = user3         read only = No [group1]         comment = group1         path = /smb/group1         valid users = @group1         read only = No [group2]         comment = group2         path = /smb/group2         valid users = @group2         read only = No 重新啟動samba服務: service smb restart  在windows資源管理器位址列中輸入 \\IP,本例中是\\10.0.0.72 就會彈出如下視窗要求輸入網路密碼   最終效果: 用user1登入後,可以訪問 user1和group1;  用user2登入後,可以訪問user2,group1和group2;  用user3登入後,可以訪問user3和group2。 如果登入沒有訪問許可權的資料夾後,還會彈出輸入網路密碼的視窗。 還有一種應用情形,在實際工作中經常遇到:公司裡每一個部門都有以自己部門名稱來命名的資料夾,但部門內的每個人都需要有自己的私人資料夾,在不增加共享資料夾數量的情況下,在部門資料夾內部實際只有自己可以訪問的資料夾。這樣做的好處就是使共享資料夾數量不致於太多而難於管理,同時也不方便查詢檔案。 拿本例來說: user1和user2都屬於group1這個組,他們都可以訪問共享資料夾group1,但是在資料夾group1中使用者user2有些資料夾(比如資料夾user2)不想讓本組的其他人訪問。 這種情況屬於共享的問題,而屬於資料夾許可權的問題。 因些只需要在linux命令列下修改資料夾group1中資料夾user2的使用者和使用者組以組許可權就可以。 chown -R user2:user2 /smb/group1/user2 chmod -R 700 /smb/group1/user2 大多數情況下,這些在一個共享資料夾裡的私有資料夾都是由管理員來設定的,使用者是無法設定的。 這樣設定後,非使用者user1訪問這個檔案時,系統就會有如下提示:   更多Linux方面的資料請訪問:http://www.aminglinux.com/bbs/?fromuid=4297