一直以來Windows主機之間都使用SMB/CIFS網絡協議實現文件和打印資源的共享。由於SMB/CIFS網絡協議是微軟的私有協議,所以無法和UNIX系統進行通信,直到Samba的出現。
Samba它最初出現在大家面前的時間是1992年。Samba系統通過利用越來越多的開放源代碼軟件,獲得了豐富多彩的性能,並且變得越來越穩定。在Linux(UNIX)系統中實現了SMB/CIFS網絡協議,可以講Linux系統中的目錄和文件提供給Windows主機進行訪問,很好的實現了Linux和Windows系統之間的文件互通。
Samba服務器中包括兩個服務程序。兩個程序將同時運行,缺一不可。
1.samba服務程序爲客戶機提供了服務器中共享資源(目錄和文件)的訪問。
2.nmbd服務程序提供了NetBLOS主機名稱的解析,爲Windows網絡中或者工作組內的主機進行主機名稱解析。
指令 值 功能說明
comment = 指的是對改共享的備註
security = share/user #訪問不需要口令/訪問需要用戶名和口令
public = yes/no #所有用戶可訪問/不是所有用戶可訪問
browseable = yes/no #顯示共享/隱藏共享
path = 共享物理路徑 #共享的物理路徑
writable = yes 寫入權限 #所有能訪問的用戶都有寫入權限
write list = 用戶名 @組名 #指定的用戶和組有讀寫權限
guest account = 用戶名 #把來賓用戶映射成一個SAMBA用戶
read only = yes/no #只讀的權限/讀寫權限
allow hosts = host(subnet) #一段可訪問的IP地址範圍
valid users = user(@group) #指定使用該共享目錄的用戶或組
invalid users = user(@group) #指定不能使用該共享資源的用戶或者組
read(write/admin) list = user(@group) #指定只能讀取(讀取寫入/管理)該共享資源的用戶和組
create mode = 0755 指明建立的文件屬性,一般爲0755
匿名訪問:
Vi /etc/samba/smb.conf修改主配置文件
58行 security = share (訪問不需要口令)
匿名用戶不需要口令即可訪問samba服務器。
訪問需要用戶名和口令
建立samba用戶。它不使用系統用戶賬號登陸,而是維護自己用戶賬號文件。Samba服務器的用戶賬號保存在“etc/samba”目錄中。
#useradd 1
#smbpasswd –a 1
修改主配置文件:
Share = user
用戶2沒權限訪問share
允許訪問共享的網段
hosts allow = 192.168.1.1 192.168.1.127 (不在範圍內的主機不能訪問samba服務器。)
每個用戶可以訪問自己的宿主目錄,並且只有該用戶能訪問宿主目錄,並具有完全的權限,而其他人不能訪問你的宿主目錄。
創建samba用戶3和用戶4.並創建宿主目錄。
Share = user 啓用認證機制
[homes] #共享名
comment = Home Directories #共享文件夾說明
browseable = no #隱藏共享
writable = yes #寫入權限
valid users = %S #只有本系統用戶才能訪問
create mode = 0664 #創建文件的默認權限
directory mode = 0775 #創建目錄的默認權限