Samba共享服務器linux
1.samba應用 SMB(server Message Block 服務消息塊)/CIFS(common Internet File System 通用互聯網文件系統 ) 網絡協議來實現的。SMB用於linux,CIFS用於 windows。vim
2.smbd:爲客戶機提供服務器中共享資源的訪問。 nmbd:提供基於NetBIOS主機名稱的解析,爲windows網絡中的主機進行名稱解析windows
3.【global】 全局設置,這部分配置項的內容對整個samba服務器有效。
【homes】 用戶目錄共享設置,設置對應的Samba用戶宿主目錄的默認共享,即當用戶訪問服務器與本身用戶同名的共享文件夾時,默認映射到本身的 宿主目錄。
【printers】 打印機共享設置安全
4. smbd服務程序監聽TCP協議的139(SMB)、445(CIFS),nmbd服務程序監聽UDP協議的137-138(NetBIOS)。服務器
*************************************************網絡
/etc/samba/smb.conf 配置文檔dom
workgroup = MYGROUP 設置Samba 服務器所屬的羣組名稱或windows的域名。
server string = samba server version %v 設置Samba服務器的簡要說明
hosts allow = 127. 192.168.12. 192.168.13. 設置可訪問的Samba服務器的主機、子網或域。ide
security = user(由本服務器驗證用戶名及密碼訪問)、share(可匿名訪問)、server(由另外一臺服務器驗證用戶及密碼訪問)、domain(由windows 域控制器驗證用戶及密碼訪問。)
log file = /var/log/samba/log 設置samba服務器的日誌文件,默認設置爲"var/log/samba/log.%m"表示日誌文件保存到"/var/log/samba"目錄中,
'%m' 變量表示客戶端主機名或IP地址。
max log size = 50 設置日誌文件的最大容量,默50KB。學習
[public] 目錄共享後的名字
comment = public stuff 設置共享描述
path = /home/samba 設置共享路徑爲'home/samba'
public = yes 能夠匿名共享訪問
writable = yes 全部用戶具備寫權限
printables = yes 打印共享權限
write list = user 設置那些用戶或組能夠寫入共享目錄中
browseable = yes 具備可瀏覽權限
valid users = user 設置那些用戶或組能夠訪問共享目錄的數據
creat mode = 640 設置用戶在目錄中創建文件夾的默認權限
directory mode = 750 設置用戶在目錄中創建文件夾的默認權限
read only = yes 設置只讀rest
service smb restart 重啓服務
*************************************************
創建匿名訪問
[role] 目錄共享後的名字
comment = public stuff
path = /mnt/role
public = yes
writable = yes
service smb restart 重啓服務
smbclient -L 192.168.100.1/mnt/role 查看目標主機共享資源列表
smbclient //192.168.100.1/role linux 下直接進行訪問
//192.168.100.1/role windows 下直接進行訪問
*************************************************
創建帶驗證的文件共享訪問
security = user
[role] 目錄共享後的名字
comment = public stuff
path = /mnt/role
browseable = yes
useradd jack
passwd jack
smbpasswd -a jack 添加samba用戶
password:***** 爲所添加的samba用戶設置密碼
chcon -t samba_share_t /mnt/role 更改條目
也可
getsebool -a | grep samba*
setsebool -P *samba_domain_home_dirs* on 開啓條目,此處條目根據須要設置並更改
service smb restart 重啓服務
smbclient -U jack //192.168.100.1/role 帶驗證的用戶訪問
smbclient -L //192.168.100.1/role 查看可共享的文件或目錄
在windows 裏訪問方式:在地址欄裏輸入'\\192.168.100.1\role' 便可訪問
mkdir 123/
mount -o username=jack //192.168.100.1/role 123/ 經過掛載的方式進行訪問
mount -o username=jack,password=jack //192.168.100.1/role 123/
mount -a
df -Th
*************************************************
創建用戶名映射 目的起到安全做用
vim /etc/samba/smbusers 默認自帶的兩條映射
# Unix_name = SMB_name1 SMB_name2 ......
root = adminstrator admin 當用administrator訪問時,服務器映射爲root用戶
mobody = guest pcguest smbguest 當用guest訪問時,服務器映射爲nobody用戶
jack=tom 此條爲本身設置的條目,當用tom 訪問時,服務器映射爲jacke用戶
配置完以上設置後
vim /etc/samba/smb.conf
username map = /etc/samba/smbusers 在[global] 全局配置中指定名稱映射文件
*************************************************
給予權限問題
samba 服務器設置權限要低於文件系統權限,所共享的文件或目錄的權限要與服務器配置文檔的權限相對應。
writable與write list 不能同時共存。
特此聲明,因爲在下是一個剛出道的學生,以上實驗是本身在VMware裏搭建的服務,而且運行正常。若有問題望君能及時分享提出寶貴修改意見,以供可以學習參考,謝謝!!!
在下QQ:641667727 mail:lalingshidawen@163.com