Linux 5.4 RHCE samba學習筆記二
接“Linux 5.4 RHCE samba學習筆記一”繼續哦
四、下面我們來實現第四個目標,我們來做一個企業經典的samba伺服器實例
實例如下:企業要求搭建samba伺服器來提供文件共享服務,有財務部、銷售部,還有公共共享文件目錄,財務部和銷售部都事關部門機密文件,別人不能讀取,所以要實現只有公司經理能讀取和寫入財務部、銷售部的共享目錄,各個部門員工只能訪問和寫入本部門的共享目錄,但不能刪除其他用戶寫入的文件,公共目錄職能讀取不能寫入.
下面我們來做吧,一個一個來實現
先創建要共享的目錄並為銷售部和財務部加上冒險位(關於冒險位就不多說了,在“samba學習筆記一”裡面講過的哦)
編輯smb.conf文件
添加如下參數,是samba伺服器讀取用戶或者組的單獨配置文件
配置共享公共目錄
保存退出
我們創建所需要的賬戶和組,經理:jingli, 財務部:c1 、c2(組:caiwu) 銷售部:x1 、x2(組:xiaoshou) 其他部門員工賬號:q1
系統用戶創建成功,我們把這些用戶添加成samba用戶
所有的samba用戶創建已經成功
我們創建單獨的用戶、組配置文件,看下圖:
其中smb.conf. bak 是我之前備份的smb.conf文件
配置
xiaoshou組、caiwu組、jingli的配置文件配置xiaoshou組的配置文件中的共享文檔
配置caiwu組的共享文檔,如下:
配置經理的配置文件,如下:
重啟服務如下:
下面我們來測試:
先使用經理的賬戶登錄試試
登錄后看到的共享文檔如下:
銷售部、財務部、公共共享 都能看到的,還有一個是自己的家目錄,下面我們來測試許可權,看有沒有寫入的許可權
如上:銷售部和財務部我們都有寫入的許可權
下面我們測試銷售部門員工登錄情況
登錄后能訪問的共享目錄如下:
我們在銷售部目錄創建文件
我們測試一下冒險位的作用,我去刪除jingli創建的文件試試:如下
無法刪除,說明實驗成功哦
下面測試財務部的哦,呵呵
這好似c1登錄后能夠共享的目錄,測試創建文件和刪除其他用戶的文件
當然我們也可以使用Linux客戶端來訪問並掛載samba共享目錄,很簡單,具體訪問和掛載命令看第四部分“samba伺服器配置文件常用參數和命令解釋”
看到實驗的結果了吧,所有的目標實現,第四個目標完成,那麼我們開始下一個唄!
四、samba伺服器配置文件常用參數和命令解釋:
全局配置參數
1、在global下添加一行欄位username map = /etc/samba/smbusers開啟用戶帳號映射功能. samba帳號 = 虛擬帳號(映射帳號)
hosts allow 和
hosts deny 欄位的使用2、hosts allow 欄位定義允許訪問的客戶端
hosts deny 欄位定義禁止訪問的客戶端
hosts deny = All 表示所有客戶端,不是說名稱為all的主機哈,這是通配符哦.
hosts allow = 192.168.0. EXCEPT 192.168.0.100 192.168.0.78
表示允許 192.168.0.0網段IP地址訪問,但是192.168.0.100和192.168.0.78除外 (這個也可以加入到共享目錄的配置裡面,這樣的話只對共享目錄生效)
3、在[global]中加入config file = /etc/samba/smb.conf.%U,表示samba伺服器讀取 /etc/samba/smb.conf.%U文件,其中%U代表當前登錄用戶.
也可以添加如下參數:不過是有區別的,“我在samba學習筆記一”裡面講過了
(看看效果吧,我修改smb.conf裡面的讀取用戶配置參數include為config file之後,用客戶端訪問如下:
看到了吧,在smb.conf裡面配置的share共享文檔沒有啦,說明config file
參數講不讀取smb.conf裡面的共享目錄,而是直接讀取了用戶或組的單獨配置文件,兩個欄位參數各有所長,所以看你怎麼用了 )include = /etc/samba/%U.smb.conf表示使samba伺服器載入/etc/samba目錄下格式為“用戶名.smb.conf”的配置文件.
include = /etc/samba/%G.smb.conf表示使samba伺服器載入/etc/samba目錄下格式為“組名.smb.conf”的配置文件.
4、
security = share / user........安全級別的參數: 定義Samba的安全級別,按從低到高分為四級:share,user,server,domain.它們對應的驗證方式:
share:任何用戶無需用戶名和口令即可訪問伺服器上的資源.
user:samba的默認配置,在訪問共享資源之前必須通過本地用戶驗證.
5、默認
/etc/samba下面沒有smbpasswd文件,解決辦法:在smb.conf文件中註釋掉passdb backend = tdbsam 一行,在下面加上smb passwd file = /etc/samba/smbpasswd6、使用加密口令 ———— encrypt password = yes/no
共享目錄配置參數
1、comment = 備註信息
2、path = 絕對地址路徑
3、public = yes #允許匿名訪問
public = no #
禁止匿名訪問 (public和valid users 不能同時使用,這樣public沒效果)
4、valid users = @組名,用戶名 ,但是前提是public設置成no
invalid users = @組名,用戶名,就算你上面允許他了,但是加入這句,這個用戶也 會 被拒絕.一般用在允許所有,而禁止某幾個用戶的時候使用
5、readonly = yes #只讀
readonly = no #讀寫
6、writable = yes #讀寫
writable = no #只讀
7、write list = 用戶名
write list = @組名,用戶名
write list 要生效的話,writeable 也設置成no
8、smbpasswd 的參數命令如下:
-a 添加用戶 #smbpasswd -a wqmsl
9、
writable yes 所有帳號都允許寫入 writable no 所有帳號都禁止寫入
write list
寫入許可權帳號列表 列表中的帳號允許寫入10、browseable = no表示隱藏該目錄
11、smbclient命令格式:smbclient -L 目標IP地址或主機名 -U 登錄用戶名%密碼
smbclient -L 192.168.0.188 -U boss%boss
12、smbclient //目標IP地址或主機名/共享目錄 -U 用戶名%密碼
13、mount -t cifs //目標IP地址或主機名/共享目錄名稱 掛載點 -o username=用戶名
14、testparm /etc/samba/smb.conf 命令檢查
18、
15、1)samba服務的啟動
service smb start 或 /etc/rc.d/init.d/smb start
2)samba服務的停止
service smb stop 或 /etc/rc.d/init.d/smb stop
3)samba服務的重啟
service smb restart 或 /etc/rc.d/init.d/smb restart
4)
samba服務配置重新載入 service smb reload 或 /etc/rc.d/init.d/smb reload
(注意:Linux服務中,當我們更改配置文件后,一定要記得重啟服務哦,讓服務重新載入配置文件,這樣新的配置才可以生效么)
5)自動載入samba服務
chkconfig --level 35smb on #運行級別3自動載入
chkconfig --level 35smb off #運行級別3不自動載入
16、設置是否允許列印配置文件中的所有印表機開機時自動載入 load printers = yes
設置Samba 服務啟動時,將自動載入的印表機配置文件 printcap name = /etc/printcap
五、samba伺服器的介紹和原理
Samba概述
Samba是最先在Linux和Windows兩個平台之間架起了一座共享的橋樑哦,正是由於Samba的出現,我們可以在Linux
系統和Windows系統之間互相通信,如拷貝文件、實現不同操作系統之間的資源共享等等,我們可以將其架設成一個功能非常強大的文件伺服器,也可以將其架設成列印伺服器提供本地和遠程聯機列印,甚至我們可以使用samba Server完全取代NT/2K/2K3中的域控制器,做域管理工作,很強大的哦Samba應用環境
文件和印表機共享、身份驗證和許可權設置、名稱解析:Samba通過nmbd服務可以搭建NBNS(NetBIOS Name Service)伺服器 、瀏覽服務.
Samba
工作原理Samba服務功能強大,這與其通信基於SMB協議有關.SMB還提供目錄和印表機共享,並支持認證、許可權設置.SMB運行於NBT協議(NetBIOS over TCP/IP)上,使用UDP協議的137、138及TCP協議的139埠,後期SMB經過開發,可以直接運行於TCP/IP協議上,沒有額外的NBT層,使用TCP協議445埠.
製作人:wqmsl
QQ :459176770
所有的實驗都是在停止Linux防火牆和selinux服務的情況下完成
[火星人 ] Linux 5.4 RHCE samba學習筆記二已經有584次圍觀