linux中samba的含义是什么

发布时间:2022-04-14 17:32:17 作者:zzz
来源:亿速云 阅读:338

这篇文章主要讲解了“linux中samba的含义是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux中samba的含义是什么”吧!

在linux中,samba是一个基于SMB协议的开源软件,是一个能让Linux系统应用Microsoft网络通讯协议的软件。samba软件既可以用于windows与Linux之间的文件共享,也可以用于Linux与Linux之间的资源共享。

本教程操作环境: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 监听端口

TCPUDP
139 | 445137 | 138

3. samba 进程

进程对应
nmbd对应 netbios
smbd对应 cifs 协议
winbindd + ldap对应 Windows AD 活动目录

4. samba 用户

帐号密码
都是系统用户 /etc/passwdSamba 服务自有密码文件通过 smbpasswd -a USERNAME 命令设置
//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.

5. samba 安全级别

Samba 服务器的安全级别有三个,分别是 user,server,domain

安全级别作用
user基于本地的验证
server由另一台指定的服务器对用户身份进行认证
domain由域控进行身份验证

6. samba 配置文件

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.20serverCentOS7
192.168.10.30clientCentOS7
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 'Bad User'	#123456
mkdir -p /opt/smb
mount -t cifs //192.168.10.20/yc /opt/smb/ -o username='Bad User'
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中samba的含义是什么”的内容了,经过本文的学习后,相信大家对linux中samba的含义是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

推荐阅读:
  1. php中$的含义是什么?
  2. mysql中into的含义是什么

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux samba

上一篇:Golang怎么监听日志文件并发送到kafka中

下一篇:vue怎么使用天地图和openlayers实现多个底图叠加显示效果

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》