天天看點

自學鳥哥linux服務-samba檔案共享服務

實驗環境

CentOS 6.5

IPADDR=192.168.1.229

yum -y install samba

配置檔案

vim /etc/samba/smb.conf

[global] 全局參數

 workgroup = WORKGROUP                          #工作組

 server string = Samba Server Version By Ltiaw  #顯示名稱

 netbios name = FILESERVER                      #windows工作組顯示的主機名

 log file = /var/log/samba/log.%m               #日志記錄

 max log size = 50                              #日志大小限制 0表示不限

 security = user                                #認證模式user 使用者認證,share共享不認證

 passdb backend = tdbsam                        #使用者密碼資料

建立目錄

[共享目錄]                                      #目錄名稱

        comment = sharedir                      #描述

        path = /company/gshare                  #路徑

        browseable = yes                        #是否允許浏覽=yes

        public = yes                            #是否共公=yes

        writable = yes                          #可寫?=yes

        create mask = 0755                      #檔案建立的預設權限

        directory mask = 0755                   #目錄建立的預設權限

儲存退出

啟動服務

/etc/init.d/smb restart

開放端口:

udp137

udp138

tcp139

tcp445

iptables -I INPUT -p udp --dport 137:138 -j ACCEPT

iptables -I INPUT -p tcp --dport 139 -j ACCEPT

iptables -I INPUT -p tcp --dport 445 -j ACCEPT

建立使用者

[root@yscoo ~]# useradd -s /sbin/nologin bob   #建立bob不允許登入

[root@yscoo ~]# pdbedit -a bob                 #用pdbedit指令建立smb使用者

new password:

retype new password:

Unix username:        bob

NT username:          

Account Flags:        [U          ]

User SID:             S-1-5-21-2341977322-3935453642-2240024245-1001

Primary Group SID:    S-1-5-21-2341977322-3935453642-2240024245-513

Full Name:            

Home Directory:       \\fileserver\bob

HomeDir Drive:        

Logon Script:         

Profile Path:         \\fileserver\bob\profile

Domain:               FILESERVER

Account desc:         

Workstations:         

Munged dial:          

Logon time:           0

Logoff time:          三, 06 2月 2036 23:06:39 CST

Kickoff time:         三, 06 2月 2036 23:06:39 CST

Password last set:    三, 30 3月 2016 10:45:31 CST

Password can change:  三, 30 3月 2016 10:45:31 CST

Password must change: never

Last bad password   : 0

Bad password count  : 0

Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

建立目錄:

mkdir -p /company/gshare/

檢視權限

ll /company/gshare/

drwxr-xr-x. 2 root root 4096 3月  30 10:41 gshare

chmod o+w /company/gshare/       #這個是共用目錄所有把其它人的權限加上w

################測試##########################

windows上通路共享

\\192.168.1.229

提示通路不了,沒權限

可能是selinux的問題

ll -dZ /company/  #檢視目錄selinux文

更改

chcon -R -t samba_share_t /company/gshare/

通路

通路成功輸入使用者密碼登入

看到共享目錄了

建立删除寫入

基本的samba搭建成功了

加入開機啟動

chkconfig smb on

chkconfig nmb on  #能讓工作組裡查找到samba的服務

##################其他功能###############################

1.如果想不用輸入密碼就能進入共享,允許區名使用者操作

[global]

security = share      #改為share

儲存重新開機

成功通路

建立檔案:1.txt

在伺服器上ll 1.txt檢視。發現1.txt owner群組都是映射為: nobody 

/company/gshare 權限剛才已經把o權限提升為7了,是以操作起來沒問題!

2.允許區名使用者操作的同時也設定進入别的檔案夾需要驗證!

security = user   #啟用驗證

passdb backend = tdbsam

map to guest = bad user  #增加這兩行,使在user模式下,也可以允許區名操作

guest account = nobody   #設定區名用nobody

定義檔案夾

[bob]

        comment = bob

        path = /company/bob

        browseable = yes

        public = no             #不公用

        writable = no           #不能寫

        write list = bob        #寫使用者清單

        admin user = bob        #擁有者

儲存重載服務

/etc/init.d/smb reload

建立檔案夾

mkdir /company/bob/

更改擁有者

chown bob.bob bob

windows通路 \\192.168.1.229

 打開看到共享目錄和bob,能夠進入共享目錄,點bob提示要輸入密碼.成功

具體權限可以自己設定

3.給samba建立資源回收筒

        public = no             

        writable = no           

        write list = bob        

        admin user = bob       

                 vfs object = recycle                   #啟用資源回收筒子產品

                        recycle:repository = 資源回收筒/     #目錄名

                        recycle:keeptree = yes            #保持檔案目錄樹

                        recycle:versions = yes            #當同名時,用copy #1 of 差別

                        recycle:maxsixe = 0                #無限大小

                        recycle:exclude = *.tmp,*.TMP,~$*  #例外檔案,不儲存到資源回收筒

在bob下删除1.txt,自動生成了資源回收筒目錄,并且1.txt已經在目錄裡了,

測試成功

4.samba不加載列印機的設定

就算使用上成功了,但是cat /var/log/message 還是發現有如下錯誤。是關于列印機的。

[2016/03/30 10:06:17.767580,  0] printing/print_cups.c:151(cups_connect)

Mar 30 10:06:17 yscoo smbd[15046]:   Unable to connect to CUPS server localhost:631 - 拒絕連接配接

Mar 30 10:06:17 yscoo smbd[26784]: [2016/03/30 10:06:17.768023,  0] printing/print_cups.c:528(cups_async_callback)

Mar 30 10:06:17 yscoo smbd[26784]:   failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL

修改列印設定

 load printers = no  

;cups options = raw                  #注釋這行          

 printcap name = /dev/null

 printing = cups

 disable spoolss = yes                #不顯示列印機

儲存

檢視日志沒提示錯誤了

windows通路也看不見列印機和傳真了

繼續閱讀