samba檔案共享服務
samba服務協定
smb協定:服務消息塊協定 { 139 |445 }
cifs協定: 通用網際網路檔案系統
samba軟體包主要構成
samba: samba服務端軟體
samba-common: samba公用元件
samba-client: samba用戶端軟體
samba伺服器主要程式
smbd:提供對伺服器中檔案、列印資源的共享通路
nmbd:提供基于netbios主機名稱的解析
samba服務腳本和配置檔案:
/etc/init.d/smb
/etc/samba/smb.conf
testparm: 配置檔案檢查工具
smb.conf檔案配置内容
[global] :全局配置
[homes] :使用者家目錄共享設定
[printers] :列印機共享設定
smb.conf檔案使用者可以配置,每個配置項都是中括号形式例:[share]
配置項含義:
workgroup:工作組名稱
server string:伺服器描述資訊
security:安全級别 { share | user | server |domain }
log file:日志檔案位置,“%m”變量表示客戶機位址
max log size:日志檔案的最大容量,機關為kb
passwd backend:設定共享賬戶檔案的類型
comment:對共享目錄的注釋、說明資訊
path:共享目錄在伺服器中對應的實際路徑
browseable:該共享目錄在“網路上的芳鄰”中是否可見
guest ok:是否允許所有人通路,等效于“public”
writable:是否可寫,與read only的作用相反
valid users:通路授權使用者,多個以 , 隔開
write list:可寫授權清單,多個以,隔開
hosts allow :允許通路主機
hosts deny:拒絕通路主機
{限制的對象可以是主機名、ip位址、ip網段,多個位址以空格火逗号隔開,網段表示:192.168.1.0/24或192.168.1 (省去主機部分)}
username map:别名映射配置項,指向映射配置檔案etc/samba/smbusers
directory mask :使用者上傳(建立)目錄的預設權限
create mask :使用者上傳(建立)檔案得預設權限
配置:
在配置etc/samba/smb.conf時,為了友善觀看,一般把注釋、空行、配置樣例行(以;開頭)去掉,可以用grep過濾和 > 重定向導入來去除。(建議事先備份一份),每配置一次都要重新開機一下服務service smb restart
匿名通路:
建立一個共享配置項,path指定其路徑,路徑目錄要存在
安全級别設定為:security = share
允許所有人通路:guset ok = yes
重新開機服務:service smb restart
需驗證的共享
建立系統使用者
useradd tom
添加samba使用者并設密碼(系統存在的使用者名)
pdbedit -a tom
(smbpasswd -a tom)
安全級别設定為:security = user
關閉(删除)所有人通路:gusetok = no
别名映射配置檔案
/etc/samba/smbusers
配置:使用者名 = 别名(tom = zhangsan lisi)多個别名以空格相隔
編輯/etc/samba/smb.conf,在[global]中指定映射檔案
usernamemap = /etc/samba/smbusers
使用者授權(隻在此項中使用者可通路)
編輯/etc/samba/smb.conf,添加valid users 配置項
例:valid users =tom,root
寫入授權(應删除writable配置項)
編輯/etc/samba/smb.conf,添加write list配置項
例: write list= tom,root
用戶端授權
編輯/etc/samba/smb.conf,添加hosts { allow | deny} 配置項
例:hosts allow =192.168.1.9192.168.2192.168.3.0/24(允許此類位址通路)
hosts deny = 192.168.1.9192.168.2192.168.3.0/24(阻止此類位址通路)
注:hosts allow和hosts deny不應同時出現
使用smbclient通路
匿名
smbclient -l 192.168.1.1 檢視有哪些共享
smbclient //192.168.1.1/t78 通路
非匿名
smbclient -l 192.168.1.1 -u tom 檢視
smbclient -u tom //192.168.1.1/t78 通路
mount挂載
挂載前要确定系統中安裝了cifs-util工具
mount -o username=tom,password=密碼 //192.168.1.1/t78/t78
開機自動挂載
在/etc/fstab中添加
//192.168.1.1/t78/t78 cifs defaults,username=tom%密碼 0 0
autofs自動挂載
需安裝autofs自動挂載工具
在/etc/auto.master中添加
/mnt /etc/samba.misc
指定挂載主目錄/mnt和挂載目錄配置/etc/samba.misc
建立/etc/samba.misc并添加以下挂載配置項
samba -fstype=cifs,usename=tom,password=密碼 ://192.168.1.1/t78