Samba服務器安裝




Samba服務概述:

Samba最先在Linux和Windows兩個平臺之間架起了一座橋樑,正是由於Samba的出現,我們可以在Linux系統和Windows系統之間互相通信,比如拷貝文件、實現不同操作系統之間的資源共享等等,我們可以將其假設成一個功能強大的文件服務器,也可以將其架設成打印服務器提供本地和遠程聯機打印。


Samba應用環境:

文件和打印機共享:文件和打印機共享是Samba的主要功能,SMB進程實現資源共享,將文件和打印機發布到網絡之中,以供用戶可以訪問。

身份驗證和權限設置:smbd服務支持user mode和domain mode等身份驗證和權限設置模式,通過加密方式可以保護共享的文件和打印機。


端口號:139 和 445

在早期,SMB運行於NBT協議(NetBIOS over TCP/IP)上,使用UDP 協議的137/138以及TCP協議的139端口。



NETBIOS協議

NetBIOS是Network Basic Input/Output System的簡稱,網絡基本輸入/輸出系統協議。一般指用於局域網通信的一套API,是由IBM公司開發。主要作用:通過NETBIOS協議獲得計算機名稱,然後把計算機名解析爲對應的IP地址。


模式: C/S模式


安裝Samba:

[root@www ~]# rpm -ivh /mnt/Packages/samba-3.6.23-45.el6_9.x86_64        #該包爲Samba服務的主程序包


配置文件:

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


服務啓動和關閉:

1)Samba服務的啓動

[root@www ~]# service smb start        #啓動
[root@www ~]# service smb stop         #關閉
[root@www ~]# service smb restart      #重啓
[root@www ~]# service smb reload       #重讀配置文件
[root@www ~]# chkconfig smb on         #設置開機啓動


查看對應端口號:

[root@www ~]# netstat -antup | grep smb
tcp        0      0 0.0.0.0:139                 0.0.0.0:*                   LISTEN      11458/smbd          
tcp        0      0 0.0.0.0:445                 0.0.0.0:*                   LISTEN      11458/smbd          
tcp        0      0 :::139                      :::*                        LISTEN      11458/smbd          
tcp        0      0 :::445                      :::*                        LISTEN      11458/smbd



 


修改配置文件

Samba常規服務器配置

基本的Samba服務器的搭建流程主要分爲四個步驟:

1、編輯主配置文件smb.conf,制定需要共享的目錄,併爲共享目錄設置共享權限。

2、在smb.conf文件中指定日誌文件名稱和存放路徑。

3、設置共享目錄的本地權限以及Samba共享權限。

4、重新加載配置文件或重新啓動smb服務,使配置生效

配置文件詳解:

1、Samba配置簡介

smb.conf 文件的開頭部分爲Samba配置簡介,告訴我們smb.conf 文件的作用及相關信息。

smb.conf 中還有以“;”開頭,這些都是Samba配置的格式範例,默認是不生效的,可以通過去掉前面的“;”並加以修改來設置想要的功能。



2、Golobal settings

Global Settings設置爲全局變量區域。全局變量就是說我們只要在global時進行設置,那麼該設置項目就是針對所有共享資源生效。這與以後我們學習的很多服務器配置文件相似。

wKiom1nK9lGzoHB9AAAI_hRfcxk698.png


格式:    字段=設定值





【global】常用字段及設置方法:


1、設置Samba服務器所在工作組或域名

這裏設置Samba服務器的工作組爲test.cn

 workgroup = test.cn    #工作組


2、服務器描述,服務器描述實際上類似於備註信息。

設置Samba描述信息爲“test.cn Samba Server ”。

 server string = test.cn Samba Server   #Samba服務器描述


3、設置Samba服務器安全模式。常見模式有兩種:share安全級別模式和user安全級別模式

Samba服務器有share、user、server、domain和AD活動目錄 五種安全模式。


    share 安全級別模式

客戶端登錄Samba服務器,不需要輸入用戶名和密碼就可以瀏覽Samba服務器的資源,適用於公共的共享資源,安全性差,需要配合其他權限設置,保證Samba服務器的安全性。


    user 安全級別模式

客戶端登錄Samba服務器,需要提交合法賬號和密碼,經過服務器驗證愛可以訪問共享資源,服務器默認爲此級別模式。


4、Share Definitions 共享服務的定義

[homes]爲特殊共享目錄,表示用戶主目錄

[printers]表示共享打印機



配置一個共享資源:

[share]           #設置共享名 
        comment = Home Directories    #描述
        path = /share                 #共享路徑,寫絕對路徑
        browseable = yes              #是否允許查看共享內容。如果爲否,後期通過絕對路徑,可以查看到。
        public = yes                  #允許匿名查看


5、設置訪問用戶

如果共享資源存在重要數據的話,需要對訪問用戶審覈,我們可以使用valid users字段進行設置。

格式:

valid users = 用戶名

valid users = @組名


6、設置目錄只讀

共享目錄如果限制用戶的讀寫操作,我們可以通過readonly實現。

格式:    

readonly = yes        #只讀

readonly = no         #讀寫


7、設置目錄可寫

如果共享目錄允許用戶寫操作,可以使用writable 或 write list 兩個字段進行設置

writable格式:

writable = yes # 讀寫

writable = no  # 只讀

write list 格式:

write list = 用戶名

write list = @組名


Samba服務日誌文件

在/etc/samba/smb.conf 文件中,log file 未設置Samba日誌的字段。





修改配置文件,實戰舉例:搭建匿名Samba服務器


例:公司現在用一個工作組test.cn,需要添加Samba服務器作爲文件服務器,併發布共享目錄/share,共享名爲public,這個共享目錄允許所有公司員工訪問。

[root@www ~]# mkdir /share                    #創建共享目錄
[root@www ~]# cp /etc/passwd /share           #複製一個測試文件
[root@www ~]# vim /etc/samba/smb.conf

        

工作組以及服務器描述


wKiom1nLCVOwCuDxAAAe6W-w3xI517.png


共享級別爲share,允許匿名訪問。


wKioL1nLCa_TR2gBAAAx0GACWEA188.png



設置共享目錄


wKiom1nLClmxyba7AAAKWRSh408952.png


重啓smb服務。


[root@www ~]# service smb restart
Shutting down SMB services:                                [  OK  ]
Starting SMB services:                                     [  OK  ]


測試:找一臺Windows,在文件管理器輸入服務器的地址,匿名訪問Samba服務器。

注意,地址欄前應該寫雙反斜槓\\


wKiom1nLC43RShtTAAAXDsCHQyg599.png

wKioL1nLC0_gP5YWAAAVb9kXb8A580.png






例:通過用戶名和密碼共享/share,不允許匿名登錄。


設置安全級別爲user

密碼文件指定爲/etc/samba/smbpasswd

wKioL1nLDcnAobWxAAA2cCStERY501.png


1、添加銷售部門用戶和組並添加相應Samba賬號

[root@www samba]# groupadd sales
[root@www samba]# useradd -g sales sale1
[root@www samba]# useradd -g sales sale2

注意:系統用戶無法登陸Samba,需要創建Samba賬戶。


[root@www samba]# smbpasswd -a sale1
New SMB password:                #密碼
Retype new SMB password:         #再次輸入密碼
startsmbfilepwent_internal: file /etc/samba/smbpasswd did not exist. File successfully created.
Added user sale1.
[root@www samba]# smbpasswd -a sale2
New SMB password:
Retype new SMB password:
Added user sale2.


設置共享目錄:


wKiom1nLEECzuU2AAAAOnRLz39I200.png


重啓Samba服務。

[root@www ~]# service smb restart
Shutting down SMB services:                                [  OK  ]
Starting SMB services:                                     [  OK  ]


輸入用戶名和密碼,登錄Samba服務器。

 

wKiom1nLEQWQfICqAAA0b-ClF9g663.png

wKioL1nLEMejkKQjAAAc_eKl6s8002.png









擴展參數:


客戶端控制訪問


hosts allow 和 hosts deny 的使用方法

1、hosts allow 和 hosts deny 字段的使用

hosts allow 字段定義允許訪問的客戶端

hosts deny 字段定義禁止訪問的客戶端


這裏我添加hosts deny 和 hosts allow 字段

hosts deny = 192.168.0. 表示禁止所有來自192.168.0.0/24 網段的IP地址訪問

hosts allow = 192.168.0.24 表示允許192.168.0.24這個IP地址訪問

當host deny 和 hosts allow 字段同時出現並定義的內容互相沖突時,hosts allow優先。

writable = yes    #允許寫入



















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