RHEL6.3配置文件共享(3) Samba服務之一

咱們前面介紹的NFS服務只能在Linux系統之間實現文件共享,可是企業網絡中的絕大多數客戶端都是使用Windows系統,那麼咱們可否在一臺安裝有Linux系統的服務器上設置文件共享,而後做爲文件服務器提供給網絡中的Windows客戶端訪問呢?這就要用到Samba服務。linux

Samba服務的主要功能就是實現Linux系統和Windows系統之間的互訪,既能夠在Windows客戶端上訪問Linux服務器上的文件共享,也能夠在Linux客戶端上訪問Windows服務器上的文件共享,於是相比NFS服務更具備實踐意義。vim

Samba服務基於SMB服務消息塊協議和CIFS通用互聯網文件系統協議,Samba服務對應的進程有2個:安全

095017192.jpg

文件共享功能主要是由smbd進程提供的,nmbd進程主要提供主機名稱解析功能,也就是令客戶端能夠經過計算機名的方式去訪問服務端。咱們主要考慮的是smbd進程,它對應的進程服務名爲smb。服務器

Samba服務默認並無安裝,因此咱們要先執行「yum install samba」命令安裝服務。
安裝完成後,啓動服務,並設爲永久啓動。
[root@localhost ~]# service smb start
啓動 SMB 服務:                                            [肯定]
[root@localhost ~]# chkconfig smb on
網絡


Samba服務的主配置文件爲/etc/samba/smb.conf,該文件中的內容比較多,其中大可能是以「#」開頭的註釋行,以及以「;」開頭的配置樣例行。樣例行是對配置內容的舉例,用戶能夠參考樣例行進行配置。不管是註釋行仍是樣例行,Samba服務器都將予以忽略。
使用vim編輯器打開該文件,能夠發現其中主要包括三部份內容:
【global】全局設置:這部分配置項的內容對整個Samba服務器有效。編輯器

全局配置中的主要設置項目:ide

101806841.jpg

設置Samba服務器所在的工做組以及對工做組的描述信息。當在Windows客戶端上經過網上鄰居的方式訪問文件共享時,才須要用到工做組,咱們如今已經不多去使用網上鄰居了,因此這部分信息如何設置都無所謂。測試

102210321.jpg

這部分是用來設置Samba服務器的日誌存放位置以及日誌文件大小,通常無需改動。3d

102325252.jpg

security用來設置安全級別,passdb backend用來設置用戶密碼存放位置。rest

其中security是全局設置中最重要的一個設置項目,主要有如下幾種安全級別:

102546378.jpg

安全級別中比較經常使用的是share和user。

 

除了全局設置以外,另外兩部分是對用戶主目錄和打印機的默認共享設置。

102916684.jpg

[homes]部分是對用戶主目錄的默認共享設置,也就是說Samba服務器默認將全部用戶的主目錄都設爲了共享。當在客戶端以Samba服務器中某個系統用戶的身份登陸時,就會看到本身的主目錄,而且具備寫入權限。固然每一個用戶只能看到本身的主目錄,別人的主目錄是沒法看到的。

[printers]部分是打印機的默認共享設置,若是系統中並無安裝打印機,那麼能夠將這部份內容註釋掉,或者無需理會。


下面咱們來建立一個最簡單的匿名共享,即全部客戶端無需進行身份驗證,直接就能夠訪問共享文件。

首先建立共享目錄,並在其中放一個測試文件:
[root@localhost ~]# mkdir /home/share
[root@localhost ~]# echo ‘hello,world!’ > /home/share/hello.txt
而後修改配置文件:
[root@localhost ~]# vim /etc/samba/smb.conf
首先在【global】全局設置中設置「security = share」,容許匿名訪問。

110201282.jpg

而後按「G「鍵將光標移動到文件末尾,在這裏提供了一個設置範例:

104101524.jpg

咱們能夠按照這個範例來設置要共享的目錄:

104412961.jpg

對設置項目的解釋:

  • [share]:共享名,可自由定義。

  • comment:對共享的描述信息,可自由定義。

  • path:共享目錄的路徑,必須爲絕對路徑。

  • public:是否容許全部用戶訪問。

  • writable:是否容許寫入。

範例中倒數第二行的printable,是指是否須要提供打印共享,這個通常無需設置。

範例中的最後一行write list,是指容許寫入的用戶列表。因爲咱們設置了拒絕寫入,因此這一項也不需設置。

設置完成後,保存退出,而後重啓smb服務生效。
[root@localhost ~]# service smb restart


而後咱們在另外一臺Windows客戶端上進行訪問測試,輸入Samba服務器文件共享的UNC路徑:

105323500.jpg

但此時卻發現雖然能夠匿名訪問,並能夠看到share共享目錄,但卻沒法看到其中的內容,這是因爲Samba服務器上的SELinux致使的,關於SELinux的配置咱們也放到之後再說,這裏先將Selinux關閉,也就是將其改成許可模式。[root@localhost ~]# setenforce 0[root@localhost ~]# getenforcePermissive而後在客戶端再次測試,就能夠正常訪問了。

相關文章
相關標籤/搜索