linux的samba是什么

linux中,samba是一個(gè)基于SMB協(xié)議的開源軟件,是一個(gè)能讓Linux系統(tǒng)應(yīng)用microsoft網(wǎng)絡(luò)通訊協(xié)議的軟件。samba軟件既可以用于windows與Linux之間的文件共享,也可以用于Linux與Linux之間的資源共享。

linux的samba是什么

本教程操作環(huán)境:linux5.9.8系統(tǒng)、Dell G3電腦。

一、Samba 概述

1. samba 簡(jiǎn)介

Samba 是在 Linux 和 unix 系統(tǒng)上實(shí)現(xiàn) SMB 協(xié)議的一個(gè)免費(fèi)軟件,由服務(wù)器及客戶端程序構(gòu)成。

SMB 是一種在局域網(wǎng)上共享文件和打印機(jī)的一種通信協(xié)議,它為局域網(wǎng)內(nèi)的不同計(jì)算機(jī)之間提供文件及打印機(jī)等資源的共享服務(wù)。

SMB 協(xié)議是 C/S 型協(xié)議,客戶機(jī)通過該協(xié)議可以訪問服務(wù)器上的共享文件系統(tǒng)、打印機(jī)及其他資源。

samba是一個(gè)能讓Linux系統(tǒng)應(yīng)用Microsoft網(wǎng)絡(luò)通訊協(xié)議的軟件,samba最大的功能就是可以用于Linux與windows系統(tǒng)直接的文件共享和打印共享,samba既可以用于windows與Linux之間的文件共享,也可以用于Linux與Linux之間的資源共享。

Samba的服務(wù)組成

1)SMB是samba 的核心啟動(dòng)服務(wù),主要負(fù)責(zé)建立Linux samba服務(wù)器與samba客戶機(jī)之間的對(duì)話, 驗(yàn)證用戶身份并提供對(duì)文件和打印系統(tǒng)的訪問,只有SMB服務(wù)啟動(dòng),才能實(shí)現(xiàn)文件的共享,監(jiān)聽139 TCP端口。

2)NMB服務(wù)是負(fù)責(zé)解析用的,類似與DNS實(shí)現(xiàn)的功能,NMB可以把Linux系統(tǒng)共享的工作組名稱與其IP對(duì)應(yīng)起來,如果NMB服務(wù)沒有啟動(dòng),就只能通過IP來訪問共享文件,監(jiān)聽137和138 udp端口。

安裝samba服務(wù)

yum?-y?install?samba

查看安裝狀況

rpm?-qa?|?grep?samba

2. samba 監(jiān)聽端口

TCP UDP
139 | 445 137 | 138
  • tcp 端口相對(duì)應(yīng)的服務(wù)是 smbd 服務(wù),其作用是提供對(duì)服務(wù)器中文件、打印資源的共享訪問
  • udp 端口相對(duì)應(yīng)的服務(wù)是 nmbd 服務(wù),其作用是提供基于 NetBIOS 主機(jī)名稱的解析

3. samba 進(jìn)程

進(jìn)程 對(duì)應(yīng)
nmbd 對(duì)應(yīng) netbios
smbd 對(duì)應(yīng) cifs 協(xié)議
winbindd + ldap 對(duì)應(yīng) Windows AD 活動(dòng)目錄

4. samba 用戶

帳號(hào) 密碼
都是系統(tǒng)用戶 /etc/passwd Samba 服務(wù)自有密碼文件通過 smbpasswd -a USERNAME 命令設(shè)置
//smbpasswd?命令: ????-a?Sys_User?????//添加系統(tǒng)用戶為?samba?用戶并為其設(shè)置密碼 ????-d??????????????//禁用用戶帳號(hào) ????-e??????????????//啟用用戶帳號(hào) ????-x??????????????//刪除用戶帳號(hào) ? ? [root@localhost?~]#?yum?-y?install?samba-* [root@localhost?~]#?useradd?tom [root@localhost?~]#?smbpasswd?-a?tom New?SMB?password: Retype?new?SMB?password: Added?user?tom.

5. samba 安全級(jí)別

Samba 服務(wù)器的安全級(jí)別有三個(gè),分別是 user,server,domain

安全級(jí)別 作用
user 基于本地的驗(yàn)證
server 由另一臺(tái)指定的服務(wù)器對(duì)用戶身份進(jìn)行認(rèn)證
domain 由域控進(jìn)行身份驗(yàn)證
  • 以前的 samba 版本支持的安全級(jí)別有四個(gè),分別是 share,user,server,domain
  • share 是用來設(shè)置匿名訪問的,但現(xiàn)在的版本已經(jīng)不支持 share 了,但是還是可以實(shí)現(xiàn)匿名訪問的只是配置方式變了

6. samba 配置文件

  • /etc/samba/smb.conf(主配置文件)
samba 三大組成 作用
[global] 全局配置,此處的設(shè)置項(xiàng)對(duì)整個(gè) samba 服務(wù)器都有效
[homes] 宿主目錄共享設(shè)置,此處用來設(shè)置 Linux 用戶的默認(rèn)共享,對(duì)應(yīng)用戶的宿主目錄。 當(dāng)用戶訪問服務(wù)器中與自己用戶名同名的共享目錄時(shí),通過驗(yàn)證后將會(huì)自動(dòng)映射到該用戶的宿主目錄中
[printers] 打印機(jī)共享設(shè)置

7. 常用配置文件參數(shù)

參數(shù) 作用
workgroup 表示設(shè)置工作組名稱
server String 表示描述 samba 服務(wù)器
security 表示設(shè)置安全級(jí)別,其值可為 share、user、server、domain
passdb backend 表示設(shè)置共享帳戶文件的類型,其值可為 tdbsam(tdb數(shù)據(jù)庫(kù)文件)、ldapsam(LDAP目錄認(rèn)證)、smbpasswd(兼容舊版本 samba 密碼文件)
comment 表示設(shè)置對(duì)應(yīng)共享目錄的注釋,說明信息,即文件共享名
browseable 表示設(shè)置共享是否可見
writable 表示設(shè)置目錄是否可寫
path 表示共享目錄的路徑
guest ok 表示設(shè)置是否所有人均可訪問共享目錄
public 表示設(shè)置是否允許匿名用戶訪問
write list 表示設(shè)置允許寫的用戶和組,組要用 @ 表示,例如 write list = root,@root
valid users 設(shè)置可以訪問的用戶和組,例如 valid users = root,@root
hosts deny 設(shè)置拒絕哪臺(tái)主機(jī)訪問,例如 hosts deny = 192.168.10.100
hosts allow 設(shè)置允許哪臺(tái)主機(jī)訪問,例如 hosts allow = 192.168.10.200
printable 表示設(shè)置是否為打印機(jī)
#測(cè)試配置文件是否有語法錯(cuò)誤,以及顯示最終生效的配置。使用?testparm?命令 [root@localhost?~]#?testparm Load?smb?config?files?from?/etc/samba/smb.conf rlimit_max:?increasing?rlimit_max?(1024)?to?minimum?Windows?limit?(16384) Processing?section?"[homes]" Processing?section?"[printers]" Processing?section?"[print$]" Loaded?services?file?OK. Server?role:?ROLE_STANDALONE ......

二、搭建匿名用戶共享服務(wù)器(Linux – Linux)

1. 環(huán)境準(zhǔn)備

IP 主機(jī) 系統(tǒng)
192.168.10.20 server CentOS7
192.168.10.30 client CentOS7
systemctl?stop?firewalld?&&?systemctl?disable?firewalld setenforce?0 yum?-y?install?ntp?&&?ntpdate?ntp.aliyun.com  //server hostnamectl?set-hostname?server su //client hostnamectl?set-hostname?client su

2. 服務(wù)端

yum?-y?install?samba-*?&amp;&gt;?/dev/null systemctl?start?smb?&amp;&amp;?systemctl?enable?smb  #添加全局配置 vim?/etc/samba/smb.conf ...... [global] ????????workgroup?=?SAMBA ????????security?=?user ????????map?to?guest?=?Bad?User ......  #創(chuàng)建共享文件夾 mkdir?-p?/opt/yc chmod?777?/opt/yc/ ll?/opt/  #配置共享 cat?&gt;&gt;?/etc/samba/smb.conf?<p><strong><span style="font-size: 18px;">3. 客戶端</span></strong></p><pre class="brush:js;toolbar:false;">yum?-y?install?samba-*?&amp;&gt;?/dev/null systemctl?start?smb?&amp;&amp;?systemctl?enable?smb  #客戶端驗(yàn)證 smbclient?-L?192.168.10.20?-U?'Bad?User'	#123456 mkdir?-p?/opt/smb mount?-t?cifs?//192.168.10.20/yc?/opt/smb/?-o?username='Bad?User' df?-h  #在客戶端上創(chuàng)建共享目錄,文件 cd?/opt/smb/?&amp;&amp;?touch?test?&amp;&amp;?mkdir?yanchuang ls

4. 服務(wù)端上驗(yàn)證

[root@server?~]#cd?/opt/yc [root@server?/opt/yc]#ls test??yanchuang

三、Windows 訪問共享文件

同網(wǎng)段 windows 虛擬機(jī)訪問

linux的samba是什么
linux的samba是什么
linux的samba是什么

不同網(wǎng)段 windows 虛擬機(jī)訪問

  • 需要認(rèn)證

linux的samba是什么

相關(guān)推薦:《Linux視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊10 分享