SAMBA服務
目 錄
一、SAMBA服務介紹
1、SAMBA的功能
2、計算機網絡管理模式
3、相關包
4、相關服務進程
5、主配置文件
6、語法檢查
7、客戶端工具
二、SAMBA服務配置
1、全局配置
2、特定的共享設置
3、宏定義
三、管理samba用戶
四、配置目錄共享
五、基於特定用戶和組的共享
六、SMB客戶端訪問
七、掛載CIFS文件系統
1、手動掛載
2、開機自動掛載
SMB:server message block 服務器消息塊,IBM發佈,最早DOS網絡文件共享協議。
Cifs: common internet file system,微軟基於SMB發佈
SAMBA:1991年Andrew Tridgell,實現windows和UNIX相通
一、SAMBA服務介紹
1、SAMBA的功能:
共享文件和打印,實現在線編輯
實現登錄SAMBA用戶的身份認證
可以進行NetBIOS名稱解析
外圍設備共享
2、計算機網絡管理模式:
工作組WORKGROUP:計算機對等關係,帳號信息各自管理
域DOMAIN:C/S結構,帳號信息集中管理, DC,AD
3、相關包
Samba 提供smb服務
Samba-client 客戶端軟件
Samba-common 通用軟件
Cifs-utils smb 客戶端工具
4、相關服務進程
Smbd 提供smb (cifs) 服務TCP:139,445
nmbd NetBIOS 名稱解析 UDP:127,138
5、主配置文件
/etc/samba/smb.conf
6、語法檢查
testparm [-v] [/etc/samba/smb.conf]
7、客戶端工具
smbclient,mount.cifs
二、SAMBA服務配置
Smb.conf 繼承了.ini文件的給事,用[ ] 分成不同的部分
1、全局配置
[global] 服務器通用或全局設置部分
workgroup 指定工作組名稱
server string 主機註釋信息
netbios name 指定netbiso名
interfaces 指定服務偵聽接口和IP
hosts allow 可用”,”,空格,或tab分隔,默認允許所有主機訪問,也可在每個獨立共享配置,如在 [global] 設置,將應用並覆蓋所有共享設置
ipv4 network/prefix: 172.16.252.0.0/24
ipv4 network/netmask 172.16.252.0/255.255.255.0
ipv4前綴:172.16.250
ipv6 network/prefix:[2001:db8:0:1::/64]
主機名:desktop.example.com
以example.com後綴的主機名: .example.com
示 例:
host allow = 172.16.252
host allow = 172.16. .example.com
Log file=/var/log/samba/log.%m 日誌文件 %m每個主機不同日誌
max log size =50 日誌文件達到50k,將輪訓rotate,單位KB
Securtiy 三種認證方式
share :匿名(Centos 7 不在支持)
user:samba 用戶(採用linux用戶,samba 的獨立口令)
domain:使用DC(DOMAIN CONTROLLER) 認證
passdb backend = tdbsam 密碼數據庫格式
實現samba用戶:
包:samba-common-tools
工具:smbpasswd pdbedit
Samba用戶必須linux用戶,建議使用/sbin/nologin
2、特定的共享設置
[homes] 用戶的家目錄共享
[printers] 定義打印機資源和服務
[sharename] 自定義的共享目錄配置
其中:#和;開頭的語句爲註釋,大小寫不敏感
3、宏定義
%m 客戶端主機的NetBIOS名
%M 客戶端主機的FQDN
%H 當前用戶家目錄路徑
%U 當前用戶用戶名
%g 當前用戶所屬組
%h samba服務器的主機名
%L samba服務器的NetBIOS名
%I 客戶端主機的IP
%T 當前日期和時間
%S 可登錄的用戶名
三、管理samba用戶
添加samba用戶
smbpasswd -a <user>
pdbedit -a -u <user>
修改用戶密碼
smbpasswd <user>
刪除用戶和密碼
smbpasswd -x <user>
pdbedit -x -u <user>
查看samba 用戶列表:/var/lib/samba/private/passdb.tab
pdbedit -L -v
查看samba服務器狀態:smbstatus
四、配置目錄共享
每個共享目錄應該有獨立的 [ ] 部分
[共享名稱] 遠程網絡看到的共享名稱
comment 註釋信息
path 所共享的目錄路徑
public 能否被guest訪問的共享,和guest ok類似
browsable 是否允許所有用戶瀏覽到此共享
writable=yes 可以被所用用戶讀寫,默認爲no
read only=no 和writable =yes 等價,如與以上設置衝突,放在後面的設置生效
write list 三種形式:用戶,@組名,+組名, 用,分隔
如writable=no , 列表中用戶或組可都讀寫,不在列表中用戶只讀
valid users 特定用戶才能能訪問該共享,如爲空,將允許所有用戶,用戶名之間用空格間隔。
五、基於特定用戶和組的共享
編輯/etc/samba/smb.conf
[appdata]
path = /var/apps
valid users=wang,@admins
writeable = no
browseable = no
六、SMB客戶端訪問
UNC路徑: Universal Naming Convention,通用命名規範
格式: \\sambaserver\sharename
終端下使用smbclient登錄服務器
smbclient –L instructor.example.com
smbclient -L instructor.example.com -U wang
> cd directory
> get file1
> put file2
smbclient //instructor.example.com/shared -U wang
可以使用-U選項來指定用戶%密碼,或通過設置和導出USER和PASSWD環境變量來指定
七、掛載CIFS文件系統
1、手動掛載
mount –t cifs –o user=wang,password=magedu //server//shared /mnt/smb
2、開機自動掛載
cat /etc/fstab 可以用文件代替用戶名和密碼的輸入
//server/homes /mnt cifs credentials=/etc/smb.txt 0 0
cat /etc/smb.txt
username=wang
password=password
chmod 600 /etc/smb.txt