首頁  >  文章  >  運維  >  linux的samba是什麼

linux的samba是什麼

青灯夜游
青灯夜游原創
2022-04-14 17:23:585632瀏覽

在linux中,samba是一個基於SMB協定的開源軟體,是一個能讓Linux系統應用Microsoft網路通訊協定的軟體。 samba軟體既可用於windows與Linux之間的檔案分享,也可用於Linux與Linux之間的資源共用。

linux的samba是什麼

本教學操作環境:linux5.9.8系統、Dell G3電腦。

一、Samba 概述

1. samba 簡介

Samba 是在Linux 和UNIX系統上實作SMB 協定的一個免費軟體,由伺服器及客戶端程式所構成。

SMB 是一種在區域網路上共用檔案和印表機的一種通訊協議,它為區域網路內的不同電腦之間提供檔案及印表機等資源的共用服務。

SMB 協定是 C/S 型協議,用戶端可以存取伺服器上的共用檔案系統、印表機及其他資源。

samba是一個能讓Linux系統應用Microsoft網路通訊協定的軟體,samba最大的功能就是可以用於Linux與windows系統直接的檔案共享和列印共享,samba既可以用於windows與Linux之間的檔案共用,也可以用於Linux與Linux之間的資源共用。

Samba的服務組成

1)SMB是samba 的核心啟動服務,主要負責建立Linux samba伺服器與samba客戶機之間的對話, 驗證使用者身份並提供對文件和列印系統的訪問,只有SMB服務啟動,才能實現文件的共享,監聽139 TCP連接埠。

2)NMB服務是負責解析用的,類似與DNS實現的功能,NMB可以把Linux系統共享的工作組名稱與其IP對應起來,如果NMB服務沒有啟動,就只能透過IP來存取共享文件,監聽137和138 UDP連接埠。

安裝samba服務

yum -y install samba

檢視安裝狀況

rpm -qa | grep samba

2. samba 監聽連接埠

#TCP UDP
#139 | 445 #137 | 138
  • tcp 連接埠相對應的服務是smbd 服務,其作用是提供對伺服器中檔案、列印資源的共用存取
  • # udp 連接埠相對應的服務是nmbd 服務,其作用是提供基於NetBIOS 主機名稱的解析

3. samba 程序

#進程 對應
#nmbd 對應netbios
smbd 對應cifs 協定
#winbindd ldap 對應Windows AD 活動目錄

#4. samba 使用者

#帳號 #密碼

都是系統使用者/etc/passwdSamba 服務自有密碼檔案透過 指令設定
//smbpasswd 命令:
    -a Sys_User     //添加系统用户为 samba 用户并为其设置密码
    -d              //禁用用户帐号
    -e              //启用用户帐号
    -x              //删除用户帐号
 
 
[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.
安全等級
smbpasswd -a USERNAME
5. samba 安全等級
Samba 伺服器的安全等級有三個,分別是user,server,domain
  • #user
  • 基於本機的驗證

server#由另一台指定的伺服器對使用者身分進行認證

  • #domain
由網域控制進行驗證#先前的samba 版本支援的安全性等級有四個,分別是share,user,server,domainshare 是用來設定匿名存取的,但現在的版本已經不支援share 了,但還是可以實現匿名存取的只是配置方式改變了6. samba 設定檔/etc/samba/smb.conf(主配置文件)samba 三大組成#作用
##############[ global]######全域配置,此處的設定項目對整個samba 伺服器都有效#############[homes]######宿主目錄共享設置,此處用來設定Linux 使用者的預設共享,對應使用者的宿主目錄。當使用者存取伺服器中與自己使用者名稱同名的共用目錄時,經過驗證後將會自動對應到該使用者的宿主目錄中############[printers]######印表機共用設定#############

7. 常用配置文件参数

参数 作用
workgroup 表示设置工作组名称
server string 表示描述 samba 服务器
security 表示设置安全级别,其值可为 share、user、server、domain
passdb backend 表示设置共享帐户文件的类型,其值可为 tdbsam(tdb数据库文件)、ldapsam(LDAP目录认证)、smbpasswd(兼容旧版本 samba 密码文件)
comment 表示设置对应共享目录的注释,说明信息,即文件共享名
browseable 表示设置共享是否可见
writable 表示设置目录是否可写
path 表示共享目录的路径
guest ok 表示设置是否所有人均可访问共享目录
public 表示设置是否允许匿名用户访问
write list 表示设置允许写的用户和组,组要用 @ 表示,例如 write list = root,@root
valid users 设置可以访问的用户和组,例如 valid users = root,@root
hosts deny 设置拒绝哪台主机访问,例如 hosts deny = 192.168.10.100
hosts allow 设置允许哪台主机访问,例如 hosts allow = 192.168.10.200
printable 表示设置是否为打印机
#测试配置文件是否有语法错误,以及显示最终生效的配置。使用 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
......

二、搭建匿名用户共享服务器(Linux - Linux)

1. 环境准备

IP 主机 系统
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. 服务端

yum -y install samba-* &> /dev/null
systemctl start smb && systemctl enable smb

#添加全局配置
vim /etc/samba/smb.conf
......
[global]
        workgroup = SAMBA
        security = user
        map to guest = Bad User
......

#创建共享文件夹
mkdir -p /opt/yc
chmod 777 /opt/yc/
ll /opt/

#配置共享
cat >> /etc/samba/smb.conf << EOF
[yc]
comment = yc
path = /opt/yc
browseable = yes
guest ok = yes
writable = yes
public = yes
EOF

#测试配置文件是否有误
testparm

#重启服务
systemctl restart smb

3. 客户端

yum -y install samba-* &> /dev/null
systemctl start smb && systemctl enable smb

#客户端验证
smbclient -L 192.168.10.20 -U &#39;Bad User&#39;	#123456
mkdir -p /opt/smb
mount -t cifs //192.168.10.20/yc /opt/smb/ -o username=&#39;Bad User&#39;
df -h

#在客户端上创建共享目录,文件
cd /opt/smb/ && touch test && mkdir yanchuang
ls

4. 服务端上验证

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

三、Windows 访问共享文件

同网段 windows 虚拟机访问

linux的samba是什麼
linux的samba是什麼
linux的samba是什麼

不同网段 windows 虚拟机访问

  • 需要认证

linux的samba是什麼

相关推荐:《Linux视频教程

以上是linux的samba是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn