![](http://static.javashuo.com/static/loading.gif)
服務簡介
SMB:Server Message Block服務器消息塊,IBM發佈,最先是DOS網絡文件共享協議linux
Cifs:common internet file system,微軟基於SMB發佈ios
SAMBA:實現windows和UNIX相通數據庫
相關包:vim
- samba 提供smb服務
- samba-client 客戶端軟件
- samba-common 通用軟件
- cifs-utils smb客戶端工具
- samba-winbind 和AD相關
smbd 提供smb(cifs)服務 TCP:139,445windows
nmbd NetBIOS名稱解析 UDP:137,138服務器
主配置文件:/etc/samba/smb.conf網絡
語法檢查: testparm [-v][/etc/samba/smb.conf]dom
客戶端工具:smbclient,mount.cifs工具
服務器配置
smb.conf繼承了.ini文件的格式,用[ ] 分紅不一樣的部分;其中:#和;開頭的語句爲註釋,大小寫不敏感spa
- [global] 服務器通用或全局設置的部分
- [homes] 用戶的家目錄共享
- [printers] 定義打印機資源和服務
- [sharename] 自定義的共享目錄配置
宏定義:
- %m 客戶端主機的NetBIOS名
- %H 當前用戶家目錄路徑
- %g 當前用戶所屬組
- %L samba服務器的NetBIOS名
- %T 當前日期和時間
- %M 客戶端主機的FQDN
- %U 當前用戶用戶名
- %h samba服務器的主機名
- %I 客戶端主機的IP
- %S 可登陸的用戶名
一、全局配置
- workgroup 指定工做組名稱
- server string 主機註釋信息
- netbios name 指定NetBIOS名
- interfaces 指定服務偵聽接口和IP
- hosts allow 可用「,」 ,空格,或tab分隔,默認容許全部主機訪問,也可在每一個共享獨立配置,如在[global]設置,將應用並覆蓋全部共享設置
- hosts deny 拒絕指定主機訪問
- config file=/etc/samba/conf.d/%U 用戶獨立的配置文件
- Log file=/var/log/samba/log.%m 不一樣客戶機採用不一樣日誌
- max log size=50 日誌文件達到50K,將輪循rotate,單位KB
- Security三種認證方式:share:匿名(CentOS7再也不支持) | user:samba用戶(採有linux用戶,samba的獨立口令)| domain:使用DC(DOMAIN CONTROLLER)認證
- passdb backend = tdbsam 密碼數據庫格式
二、目錄共享配置
每一個共享目錄應該有獨立的[ ]部分
- [共享名稱] 遠程網絡看到的共享名稱
- comment 註釋信息
- path 所共享的目錄路徑
- public 可否被guest訪問的共享,默認no,和guest ok 相似
- browsable 是否容許全部用戶瀏覽此共享,默認爲yes,no爲隱藏
- writable=yes 能夠被全部用戶讀寫,默認爲no
- read only=no 和writable=yes等價,如與以上設置衝突,放在後面的設置生效,默認只讀
- write list 三種形式:用戶,@組名,+組名,用,分隔 如writable=no,列表中用戶或組可讀寫,不在列表中用戶只讀
- valid users 特定用戶才能訪問該共享,如爲空,將容許全部用戶,用戶名之間用空格分隔
三、用戶管理
samba用戶須是Linux用戶,建議使用/sbin/nologin
- 添加用戶:
smbpasswd -a username
- 查看用戶:
pdbedit -a -u
- 修改密碼:
smbpasswd username
- 刪除用戶:
smbpasswd -x username
- 刪除密碼:
pdbedit -x -u username
- 查看用戶列表:
pdbedit -L -v
- 查看服務器狀態:
smbstatus
客戶端訪問
UNC路徑: Universal Naming Convention,通用命名規範;格式:\sambaserver\sharename
終端下使用smbclient登陸服務器:
smbclient -L instructor.example.com -U username%password #查看共享信息
smbclient //instructor.example.com/sharedir -U username%password #訪問
mount -t cifs -o user=username,password=password //server/sharedir /mnt/smb #掛載
開機掛載:
vim /etc/fstab
//server/sharedir /mnt cifs credentials=/etc/smb.pass 0 0
vim /etc/smb.pass
username=username
password=password
chmod 600 /etc/smb.pass