桑巴是一種局域網共享
1.查看本地有沒有包
rpm -qa|grep samba
我是原就提前下好了的
2.下載
(1)掛在光盤,本地安裝
(2)在線安裝
我選擇(2),(1)既要掛載還是老版本的
命令:
3.了解配置文件
(1)
文件或目錄 |
說明 |
/etc/samba/smb.conf |
主配置文件 |
/etc/samba/lmhosts |
在啟動Samba服務進程時能自動捕捉到局域網內主機的NetBIOS名與IP地址的對應關系,並自動保存在lmhosts文件中,作用類似於/etc/hosts,一般無需配置 |
/var/lib/samba/private/passdb.tdb |
用戶認證信息文件,用來存放samba賬戶及與Linux賬戶之間的映射關系 |
/var/log/samba/ |
用於存放Samba的日志文件的目錄 |
類別 |
節/段落 |
作用 |
全局設置節 (global Settings) |
[global] |
用於定義Samba服務器的總體特性,其配置對所有節生效,主要有基本設置參數、安全設置參數、打印機設置參數和日志設置參數等 |
特定共享節 |
[homes] |
用於設置用戶家目錄的共享屬性 |
[printes] |
用於設置打印機共享資源的屬性 |
|
用戶自定義共享節 |
[節名] |
用於用戶自定義共享目錄的共享屬性的設置(需用戶添加,每個共享目錄對應一節) |
(2)
RHEL7中Samba 4版本對客戶端進行身份驗證的方式有以下兩種:
user(用戶模式):用戶對Samba服務器的訪問是由Samba服務器依據本地賬戶庫對訪問者進行身份驗證的,它要求每個訪問者必須在Samba服務器上有其本地Linux賬戶。
domain(域模式): 這種模式是把Samba服務器加入到Windows域網絡中,作為域中的成員。擔任用戶對Samba服務器訪問身份驗證的是域中的Windows域控制器,而不是Samba服務器,此時必須指定域控制服務器的NetBIOS名稱。
提示:在Samba4版本中,share和server驗證方式已被棄用。若需要share驗證方式以實現匿名訪問共享文件夾,需要用security = user和map to guest = Bad User兩個配置行方可。
此時,用戶對Samba服務器的訪問無需進行身份驗證,也就是不用輸入用戶名和密碼(即允許匿名訪問),用戶的訪問權限僅由相應用戶對共享文件的訪問權限決定。這是最簡單,但也是最不安全的一種Samba服務器訪問方式,該方式適用於公共共享資源。
(3)
smb.conf文件中共享定義的設置
要發布共享資源,需要對共享定義部分(Share Definitions)進行配置。共享定義通過[Homes]、[Printers]和[自定義目錄名]等節來說明共享資源的屬性。
[homes]為特殊共享目錄,其名字不能改變。[homes]共享目錄並不特指具某個共享目錄,而是表示Samba用戶的宿主目錄,即Samba用戶登錄后可以訪
問同名Linux系統用戶的宿主目錄中的內容。默認情況下,用戶宿主目錄位於/home目錄下,每個用戶有一個以用戶名命名的子目錄。
[printers]表示共享打印機。[printers]行也是特殊的行,不能修改其名字。若定義了[printers]段,用戶就可以連接在printcap文件里指定的打印機。要注意的是,
若是設置共享打印機,則必須設置printable關鍵字語句為yes,否則用戶無法打印。
(4)
配置項 |
說明 |
[用戶自定義的共享名] |
用戶訪問時通過此共享名來識別不同的共享資源。也就是在Windows客戶端的“網絡”或“網上鄰居”中看見的文件夾的名字,可以與原目錄名不同。 |
comment=備注信息 |
設置共享目錄或打印機的說明信息 |
path=絕對地址路徑 |
指定共享目錄在Samba服務器中的絕對路徑(此項必須要設置) |
public=yes|no |
是否允許匿名用戶訪問共享的文件夾或打印機資源 |
guest ok = yes|no |
設置共享目錄是否允許所有人都可以訪問,與public配置項作用相同 |
valid users=用戶名或組名列表 |
設置允許訪問共享的用戶或組的列表,不允許列表以外用戶訪問。多個用戶名或組名以空格或逗號分隔,組名前面應帶@、+、&三種符號之一,其中: @表示先通過NIS服務器查找,NIS找不到再到本機查找;+表示只在本機的密碼文件組中查找;&表示只在NIS服務中查找。若列表為空,表示允許所有用戶訪問共享 |
readonly=yes|no |
設置共享目錄只讀還是可讀寫 |
writable=yes|no |
指定共享目錄有讀寫權還是只讀權 (若可寫,還需要目錄本身具有寫權限),,默認設置為writable=no(即只讀權限) |
write list=用戶名或組名清單 |
設置對共享目錄具有可讀寫權限的用戶名或組名。多個用戶名或組名以空格或逗號分隔,組名前可以帶@、+、&。若writeable=no,則不在write list列表中的用戶將具有只讀權限 |
browseable = yes|no |
設置共享目錄在“網絡”或“網上鄰居”中是否可見(默認為no,即隱藏共享目錄) |
printable=yes|no |
是否允許用戶打印 |
create mask = 文件權限值 |
設置用戶在共享目錄下創建的文件的默認訪問權限。通常是以數字表示的,如0664,代表的是文件所有者對新創建的文件具有可讀可寫權限,其他用戶具有可讀權限,而所屬主要組成員不具有任何訪問權限 |
directory mask = 子目錄權限值 |
設置用戶在共享目錄下創建的子目錄的默認訪問權限 |
(3)編輯配置文件
在之前建議先cope一份配置文件用來以后還原
vim /etc/samba/smb.conf
輸入: testparm
驗證語法是否有問題,return ****ok*** 表明沒問題
(4)創建用戶和共享文件夾
useradd u1 u2
mkdir -p /var/samb/share
(5)為共享文件夾設置SELinux安全上下文
semanage fcontext -a -t samba_share_t "/var/samb/share(/.*)?"
restorecon -Rv /var/samb/share/ #默認應用至該目錄
查看擴展權限:
ll -dZ /var/samb/share/
顯示:
drwxr-xr-x. root root unconfined_u:object_r:samba_share_t:s0 /var/samb/share/
重啟服務:
systemctl restart smb nmb
(6)測試
我放了圖片在share用於window端測試
自此處輸入:\\+your ip
enter
可見如下:
如果還需要其他功能可以繼續配置.conf
2020-06-03