Samba服務(匿名用戶訪問、本地用戶訪問、虛擬用戶訪問)
SMB協議:TCP 139端口 CIFS協議:TCP 445端口
重要配置文件:
/etc/samba/smb.conf:
SAMBA的主配置文件,內有豐富的說明,也可以通過man smb.conf查看它的詳細說明。文檔內部主要設定了兩個部分,分別是[global]全局設置參數與共享文件設置參數;
security=share //設置用戶範文samba服務器的驗證方式,一共四種驗證方式:
- share:用戶訪問samba server不需要提供用戶名和密碼,安全性較低;
- user:samba server共享目錄只能被授權的用戶訪問,由samba server負責檢查賬號和密碼的正確性,賬號與密碼要在本samba server中建立;
- server:依靠其他windows NT/2000或samba server來驗證用戶的賬號和密碼,是一種代理驗證方式。該安全模式下,系統管理員可以把所有的windows用戶和密碼集中到一個NT系統上,使用windows NT進行samba認證,遠程服務器可以自動認證全部用戶和口令,如果認證失敗,samba將使用用戶級安全模式作為替代的方式;
domain:域安全級別,,使用主域控制器(PDC)來完成認證。
passdb backend=tdbsam //定義用戶後臺類型
smbpasswd: 使用SMB服務的smbpasswd命令給系統用戶設置SMB密碼
tdbsam: 創建數據庫文件並使用pdbedit建立SMB獨立用戶,smbpasswd -a username 建立samba用戶並設置密碼,不過需要先建立系統用戶,也可以使用pdbedit命令來建立samba用戶
pdbedit -a username:新建samba賬號
pdbedit -x username:刪除samba賬號
pdbedit -L:列出samba賬號列表,讀取passdb.tdb數據庫文件pdbedit -c “[D]” -u username:暫停該samba用戶的賬號
pdbedit -c “[]" -u username:恢復該samba用戶的賬號
ldapsam:基於LDAP服務進行賬戶驗證
username map=/etc/samba/smbusers //配合/etc/samba/smbusers文件設置虛擬賬號
/etc/samba/lmhosts:
主要目的在對應NetBIOS name與該主機名稱的IP,有點類似/etc/hosts功能;
/etc/samba/smbpasswd:
默認並不存在,它是SAMBA預設的使用者密碼對應表,文件也可自行在smb.conf裏面設定文件名及相應位置。不過需要註意該文件的權限(擁有者為root,權限為600);
/var/log/samba:samba服務日誌文件
Samba服務部署(匿名用戶訪問、本地用戶訪問、虛擬用戶訪問)
#安裝samba服務
rpm -ivh samba-3.6.9-164.el6.x86_64.rpm
匿名用戶訪問
- 編輯cmb.conf配置文件
vim /etc/samba/smb.conf
security=share //第101行,以share驗證方式訪問
#在原內容末尾新增內容
[share] //自定義共享名稱
comment=this is share directory! //共享描述
path=/opt/share //共享目錄路徑
public=yes //設置共享是否允許guest賬戶訪問
browseable=yes //yes/no,設置共享是否可瀏覽,如果no則表示隱藏,需要通過“//ip/共享目錄"進行訪問
writable=yes //設置共享是否具有可寫權限
create mask=0644 //創建的文件權限為644
directory mask=0755 //創建的文件目錄為755
2.創建共享目錄及設置權限
mkdir /opt/share
chmod 777 /opt/share
- 添加並重啟smb服務
chkconfig smb on
service smb restart
- 關閉selinux與防火墻
setenforce 0
service iptables stop
測試
Windows 7 系統操作:
打開運行輸入 \192.168.100.3 直接訪問
本地用戶訪問
- 編輯cmb.conf配置文件
#vim /etc/samba/smb.conf
security=user //第101行,以user驗證方式訪問
[students] //自定義共享名稱
comment=this is student directory! //共享描述
path=/opt/students //共享目錄路徑
browseable=yes //yes/no,設置共享是否可瀏覽,如果no則表示隱藏,需要通過“//ip/共享目錄"進行訪問
create mask=0644 //創建的文件權限為644
directory mask=0755 //創建的文件目錄為755
valid users=zhangsan,lisi //設置允許訪問共享的用戶,zhangsan、lisi
write list=zhangsan //設置該共享具有寫入權限的用戶,(可以為用戶和用戶組 @group)
- 創建students共享目錄及設置目錄權限
mkdir /opt/students
chmod 777 /opt/students
- 新增用戶zhangsan、lisi並設置密碼
useradd -s /sbin/nologin zhangsan
passwd zhangsan //121212useradd -s /sbin/nologin lisi
passwd lisi //121212
- 將系統用戶zhangsan、lisi添加為samba用戶並設置samba用戶登錄密碼
smbpasswd -a zhangsan
smbpasswd -a lisi
- 查看samba用戶
pdbedit -L
- 重啟smb服務
service smb restart
測試
Windows 7 系統操作:
打開運行輸入 \192.168.100.3 直接訪問,顯示登錄界面輸入用戶名:zhangsan,密碼:121212
虛擬用戶訪問
- 編輯smbusers配置文件
vim /etc/samba/smbusers
//新增以下信息
zhangsan =stu01 stu02 stu03
- 在smb.conf配置文件中添加以下記錄
vim /etc/samba/smb.conf
security=user
username map=/etc/samba/smbusers //虛擬用戶文件的映射
- 重啟smb服務
service smb restart
測試
Windows 7 系統操作:
打開運行輸入 \192.168.100.3 直接訪問,顯示登錄界面輸入用戶名:stu01,密碼:121212
Samba服務(匿名用戶訪問、本地用戶訪問、虛擬用戶訪問)