http://www.5ilinux.com/samba.html

一、samba要求:
公司有財(cái)務(wù),技術(shù),領(lǐng)導(dǎo)3個部門,我們分別為3個部門建立3個用戶組為caiwu,network,lingdao;

三個部門里各有2個用戶,我們建用戶分別為caiwu01,caiwu02,network01,network02,lingdao01,lingdao02

然后我們分別就公司的具體情況建立相應(yīng)的目錄及訪問權(quán)限,通過以下的例子,希望大家能在平時的工作中靈活的應(yīng)用samba的安全權(quán)限來設(shè)置你們的samba文件服務(wù)器。

1。首先服務(wù)器采用用戶驗(yàn)證的方式,每個用戶可以訪問自己的宿主目錄,并且只有該用戶能訪問宿主目錄,并具有完全的權(quán)限,而其他人不能看到你的宿主目錄。

2。建立一個caiwu的文件夾,希望caiwu組和lingdao組的人能看到,network02也可以訪問,但只有caiwu01有寫的權(quán)限。

3。建立一個lindao的目錄,只有領(lǐng)導(dǎo)組的人可以訪問并讀寫,還有network02也可以訪問,但外人看不到那個目錄

4。建議一個文件交換目錄exchange,所有人都能讀寫,包括guest用戶,但每個人不能刪除別人的文件。

5。建議一個公共的只讀文件夾public,所有人只讀這個文件夾的內(nèi)容。

二、操作

#groupadd caiwu

#groupadd network

#groupadd lingdao

#useradd caiwu01 -g caiwu

#useradd caiwu02 -g caiwu

#useradd network01 -g network

#useradd network02 -g network

#useradd lingdao01 -g lingdao

#useradd lingdao02 -g lingdao

然后我們使用smbpasswd -a caiwu01的命令為6個帳戶分別添加到samba用戶中

#mkdir /home/samba

#mkdir /home/samba/caiwu

#mkdir /home/samba/lingdao

#mkdir /home/samba/exchange

#mkdir /home/samba/public

我們?yōu)榱吮苊饴闊┛梢栽谶@里把上面所有的文件夾的權(quán)限都設(shè)置成777,我們通過samba靈活的權(quán)限管理來設(shè)置上面的5點(diǎn)要求。

三、vim /etc/samba/smb.conf

[global]
        workgroup = Ubuntu
        server string = Ubuntu Samba Test
        security = user
        encrypt passwords = true
        smb passwd file = /etc/samba/smbpasswd

[homes]
        comment = Home Directories
        browseable = no
        writable = yes
        valid users = %S
        create mode = 0664
        directory mode = 0775
#homes段滿足第1條件,需要說明的是需要在/home目錄里手動為每位用戶建立相應(yīng)的家目錄,并設(shè)置好相應(yīng)權(quán)限。

[caiwu]#滿足我們的第2要求
        comment = caiwu
        path = /home/samba/caiwu
        public = no
        valid users = @caiwu,@lingdao,network02
        write list = caiwu01

[lingdao]#滿足我們的第3要求

        comment = Lingdao
        path = /home/samba/lingdao
        public = no
        valid users = @lingdao,network02
        writeable = yes

[exchage]
        comment = Exchange File Directory
        path = /home/samba/exchange
        public = yes
        writable = yes

#exchange段基本能滿足我們的第4要求,但不能滿足每個人不能刪除別人的文件這個條件,即使里設(shè)置了mask也是沒用,其實(shí)這個條件只要unix設(shè)置一個粘著位就行

chmod -R 1777 /home/samba/exchange

注意這里權(quán)限是1777,類似的系統(tǒng)目錄/tmp也具有相同的權(quán)限,這個權(quán)限能實(shí)現(xiàn)每個人能自由寫文件,但不能刪除別人的文件這個要求"有些疑問!!!"

[Public]#滿足我們的第5要求。
        comment = read only Public
        path = /home/samba/public
        public = yes
        read only = yes

重啟服務(wù):#/etc/rc.d/init.d/smb restart

到此配置結(jié)束,可以使用命令:testparm /etc/samba/smb.conf檢測samba配置文件

四、驗(yàn)證samba
在windows下直接在運(yùn)行里輸入:\\server
然后輸入相應(yīng)用戶名和密碼就可以訪問

在linux下可以使用:

smbclient //服務(wù)器ip/caiwu -U caiwu01

#以caiwu01用戶的名義登錄caiwu目錄

smbmount //服務(wù)器ip/caiwu /mnt/caiwu -o username=caiwu01

#把服務(wù)器的財(cái)務(wù)目錄映射到本地的/mnt/caiwu目錄