Samba服務原理
Samba服務程序現在已經成爲在Linux系統與Windows系統之間共享文件的最佳選擇。
SMB協議:高層協議
- 提供網絡上不同主機之間共享文件。
- 爲Window客戶程序和服務提供了一個通過虛擬鏈路按照請求-響應方式進行通信的機制。
- SMB工作原理是讓NetBIOS與SMB協議運行在TCP/IP上,從而讓Linux系統在網絡鄰居中可見。
CIFS協議
- 通用網際文件系統是微軟服務器消息塊協議(SMB)的增強版
- 提供計算機用戶在企業內部網和因特網上共享文件的標準方法
- CIFS在TCP/IP運行,利用英特網上的全球域名服務系統(DNS)增強其可擴展性
CIFS協議特點
- 文件訪問的完整性
- 爲慢連接優化
- 爲文件或目錄的訪問提供安全性
- 使用同一編碼(Unicode)文件名
- 使用全局文件名
Samba服務簡介
- 應用程序,使Linux支持SMB/CIFS協議 。
- 可以運行在所有Unix平臺上。
- Samba應用程序更新較快並是基於GPL協議發行的。
Samba功能
- Linux系統和Window系統實現資源共享
- 讓Linux系統使用Window系統共享的文件和打印機
- 提供用戶認證功能
- 支持SSL安全套接層協議
- 讓Linux主機單位Window域控制和Window域成員服務器
- 讓Linux主機擔任Wins名字服務器,提供NetBIOS名字解析器
Samba提供服務
- 文件和打印機共享
- 用戶認證和授權
- 名字解析
- 瀏覽(服務通信)
Samba的守護進程
- Smbd:實現共享和驗證授權服務
- Nmbd:實現名字解析和瀏覽服務
Samba的軟件包
- samba-common : 包括Samba服務器和客戶端所需要的文件
- samba: Samba服務端軟件
- samba-winbind: 可選的Window服務
- samba-client: 客戶端軟件
- samba-swat: Web配置工具
安裝: [root@test ~]# yum install samba -y
Samba服務部署
第1步:創建用於訪問共享資源的賬戶信息
[root@node1 ~]# useradd wangwu && pdbedit -a -u wanwu
pdbedit命令:
-a :建立Samba用戶
-x 用戶名:刪除Samba用戶
-L:列出用戶列表
-Lv:列出用戶詳細信息的列表
-u:指定用戶
第2步:創建用於共享資源的文件目錄
[root@node1 ~]# mkdir /home/database
[root@node1 ~]# chown -Rf wangwu:wangwu /home/database
第3步:修改主配置文件
[root@localhost ~]# vim /etc/samba/smb.conf
添加如下配置:
[database]
comment = this is my test
path = /home/database
public = no
writable = yes
第4步:正確性檢查
[root@node1 ~]# testparm --show-all-paraments
[root@node1 ~]# systemctl restart smb
[root@node1 ~]# netstat -lunt | egrep '137|138|139|445'
第5步:測試
Window掛載共享
在Window運行輸入地址:\192.168.10.10
用戶名:wangwu
密碼:wangwu
Linux掛載共享
Samba提供了一個類似FTP客戶程序的Samba客戶程序smbclient
使用方法:smbclient //NetBIOS名或IP地址/共享名 -U 用戶名
[root@node1 ~]# yum install samba-client -y
[root@node1 ~]# smbclient -L //192.168.10.10/database -U zhaohao #檢查Samba資源
smbstatus命令:列出Samba的資源使用情況