Samba服務配置

SAMBA簡介


NFS只能實現在linux和unix系統之間實現文件共享,而CIFS(公共因特網文件系統)只能實現windows系統之間的文件共享。那麼linux或unix系統怎麼和windows系統之間共享文件呢?這就要用到SAMBA服務器了,SAMBA服務器能真正實現在不同主機、不同系統之間的文件共享。

 

主要程序

smbd:提供對文件/文件資源的共享訪問

     監聽端口 TCP139、TCP445

nmbd:提供基於NetBIOS協議的主機名解析

     監聽端口 UDP137、UDP138


環境拓撲:

                                          Linux Client

-----------RHEL5.9(vmnet1)-------------(vmnet1)

                                          Win7 Client


要求一:Samba匿名共享

工作組爲Tarena

將目錄 /usr/src 共享給所有人

共享名設爲 tools

允許所有人訪問、無需密碼驗證

訪問權限爲只讀


1、安裝軟件包

[root@localhost ~]# rpm -q samba-client  samba   samba-common     //檢查samba服務是否安裝

package samba-client is not installed

package samba is not installed        

package samba-common is not installed      

提示沒有安裝Samba包


2、修改yum主配置文件

[root@localhost ~]# cd /etc/yum.repos.d/                       

[root@localhost yum.repos.d]# cp rhel-debuginfo.repo rhel- server.repo

[root@localhost yum.repos.d]# cat rhel-server.repo 

[rhel-server]                                                    //源名稱

name=Red Hat Enterprise Linux Server                             //本軟件源的描述

baseurl=file:///misc/cd/Server                                   //指定YUM服務端的URL地址

enabled=1                                                        //是否啓此通道

gpgcheck=0                                                       //是否驗證待安裝的RPM包

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release        //用於RPM驗證的密鑰文件

//放入rhel5.9 iso


[root@localhost yum.repos.d]# yum clean all                      //清空yum緩存


3、安裝samba服務

[root@localhost yum.repos.d]# yum -y install samba samba-client  samba-common


4、修改主配置文件

[root@localhost ~]# cd /etc/samba/

[root@localhost samba]# cp smb.conf smb.conf.bak                   //修改前備份

[root@localhost samba]# vim /etc/samba/smb.conf                    //samba主配置文件

...

 74         workgroup = Tarena                                     //工作組名稱

 75         server string = Win File Ser                           //服務器描述

...

 89         log file = /var/log/samba/%m.log                       //日誌路徑,%m客戶機地址

...

 91         max log size = 50  //日誌最大容量(KB)

...

101         security = share      //使用的安全級別(share:匿名、user:用戶認證、server:由指定的服務器認證、domain:Windows域認證)

...

221         load printers = no                          //屏蔽共享時看到的打印圖標

...

289 [tools] //共享文件名

290         comment = Tools Public                      //描述

291         path = /usr/src                             //共享目錄的位置

292         public = yes                                //所有人可用

293         read only = yes                             //可讀(wrtable可寫


5、啓動服務

[root@localhost ~]# service smb restart                 //開啓smb服務

[root@localhost ~]# chkconfig smb on                 //設置開機自動啓動

[root@localhost ~]# netstat -anptu | grep mbd           //檢查端口

tcp    0  0 0.0.0.0:139    0.0.0.0:*      LISTEN      7008/smbd    

tcp    0  0 0.0.0.0:445    0.0.0.0:*      LISTEN      7008/smbd    

udp    0  0 192.168.10.10:137     0.0.0.0:*           7011/nmbd    

udp    0  0 0.0.0.0:137           0.0.0.0:*           7011/nmbd    

udp    0  0 192.168.10.10:138     0.0.0.0:*           7011/nmbd    

udp    0  0 0.0.0.0:138           0.0.0.0:*           7011/nmbd 

  

6、客戶端測試:

Windown:

UNC路徑 \\192.168.10.10


Linux:

[root@localhost ~]# yum -y install samba-client        //安裝samba客戶端

[root@localhost ~]# smbclient -L 192.168.10.10         //查詢

[root@localhost ~]# smbclient //192.168.10.10/tools    //連接

[root@localhost ~]# mkdir -p /data/smb

[root@localhost ~]# mount -t cifs //192.168.10.10/tools   /data/smb/        //掛載

[root@localhost ~]# grep smb /etc/fstab         //設置開機自動掛載

//192.168.10.10/tools   /data/smb    cifs   defaults  0  0


要求二 Samba用戶驗證

修改原有的 [tools] 匿名共享設置

不再允許所有人訪問

只允許nick讀取、tom寫入

拒絕其他用戶或匿名訪問

上傳目錄的權限爲755

上傳文件的權限爲644


1、新建相應賬戶與samba密碼

[root@localhost ~]# useradd nick                             //建立系統用戶

[root@localhost ~]# useradd tom

[root@localhost ~]# echo "redhat" | passwd --stdin nick      //設置系統用戶密碼

[root@localhost ~]# echo "redhat" | passwd --stdin tom

[root@localhost ~]# pdbedit -a nick  //添加爲共享賬號並設置密碼(可以測試哪個密碼會生效)

[root@localhost ~]# pdbedit -a tom 


2、修改主配置文件

[root@localhost ~]# vim /etc/samba/smb.conf 

...

101         security = user                          //啓用用戶認證

...        

289 [tools]                                          //共享名

290         comment = Tools Public                    

291         path = /usr/src                          //指定共享路徑

292         public = no                              //不對所以人開放

293         valid users = nick,tom                   //指定合法用戶

294         write list = tom                         //用戶tom可讀可寫

295         read only = yes                          //默認權限爲只讀

296         directory mask = 0755                    //上傳的目錄權限

297         create mask = 0644                       //上傳的文件權限

...

[root@localhost ~]# setfacl -m u:tom:rwx /usr/src/   //指定用戶tom對這個目錄具有讀寫執行權限


3、啓動服務

[root@localhost ~]# service smb restart               


4、客戶端測試

[root@localhost ~]# smbclient -U nick //192.168.10.10/tools        

[root@localhost ~]# mount -o username=nick //192.168.10.10/tools  /data/smb   //建立掛載



要求三  Samba賬戶別名與訪問地址控制

把普通帳戶nick設置別名爲kaka

設置只允許192.168.10.5地址訪問


1、修改Samba用戶別名文件

[root@localhost ~]# vim /etc/samba/smbusers

# Unix_name = SMB_name1 SMB_name2 ...

root = administrator admin

nobody = guest pcguest smbguest

nick = kaka


2、修改主配置文件

[root@localhost ~]# vim /etc/samba/smb.conf 

...

 76         username map = /etc/samba/smbusers

...

289 [tools]

290         comment = Tools Public

291         path = /usr/src

292         public = no

293         valid users = nick,tom

294         write list = tom

295         read only = yes

296         directory mask = 0755

297         create mask = 0644

298         hosts allow = 192.168.10.5


3、客戶端測試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章