您现在的位置是:首页 >学无止境 >Linux:samba服务 (smbd)网站首页学无止境

Linux:samba服务 (smbd)

鲍海超-GNUBHCkalitarro 2024-09-16 12:01:04
简介Linux:samba服务 (smbd)

smb服务器为centos7

使用的yum安装(如果不会搭建本地yum仓库可以查看) 

Linux:rpm查询安装 && yum安装_鲍海超-GNUBHCkalitarro的博客-CSDN博客


samba 简介

samba 使用了

1.SMB 协议
Server Message Block,服务消息块
2.CIFS 协议
Common Internet File System,通用互联网文件系

samba有两项主程序分别是

 smbd和nmbd。这两个守护进程在服务器启动到停止期间持续运行,功能各异。Smbd和nmbd使用的全部配置信息全都保存在smb.conf文件中。Smb.conf向smbd和nmbd两个守护进程说明输出什么以便共享,共享输出给谁及如何进行输出。

Samba提供了基于CIFS的四个服务

文件和打印服务、授权与被授权   ————      smbd提供 

名称解析、浏览服务                     ————      nmbd提供

smbd进程的作用是处理到来的SMB软件包,为使用该软件包的资源与Linux进行协商

nmbd进程使主机(或工作站)能浏览Linux服务器。


我们本章将smbd进程  用于文件传输 


安装samba 

yum -y install samba

# 安装samba服务

 

 安装完毕

systemctl start smb        启动smb
systemctl start nmb        启动nmb
systemctl enable smb        开机自启smb
systemctl enable nmb        开机自启nmb

将start 替换为 stop   就是关闭

将enable 替换为 disable 就是开机自动关闭

 成功开启服务

netstat -anput | grep "smbd"

#  可以查看占用的端口


创建共享用户 和 共享文件

首先准备一个要分配的一个文件 也是十分简单   如果你有现成的文件可以不用创建

mkdir -p /kali/tarro

等会将/kali/tarro/下的对象共享出去

现在根据你的需要创建共享用户,我这创建2个

分别是   tarro1   和 tarro2 这两位用户

思路:首先创建系统用户再将其变成入共享用户

useradd tarro1        

useradd tarro2

# 创建两个用户

passwd tarro1 

passwd tarro2

#修改两个用户的密码

pdbedit -a -u tarro1

pdbedit -a -u tarro2

# 将他俩加入共享用户   期间会让再次设置密码   这个可以和系统密码不一样   这个是等会访问文件的用户密码

pdbedit -L

# 列出所有共享用户

 pdbedit -x -u tarro1

# 取消tarro1这个共享用户

# 删除共享用户并没有删除系统用户

 再将tarro1添加回来

pdbedit -a -u tarro1        


配置samba (核心)/etc/samba/smb.conf

samba的smb主配置文件位置是   /etc/samba/smb.conf

 testparm

# 可以直接查看文件内容

vi  /etc/samba/smb.conf

# 配置文件

 [global]:全局设置
[homes]:用户目录共享设置
[printers]:打印机共享设置
[myshare]:自定义名称的共享目录设置

常见全局配置项的含义
workgroup:所在工作组名称
server string:服务器描述信息
security:安全级别,可用值如下
user、server、domain
log file:日志文件位置,“%m” 变量表示客户机地址
passwd backend:设置共享账户文件的类型
 

上面这些都可以不用改动

我们让  tarro1 和 tarro2  都可以 读取     但是只有 tarro 2 可以写入

直接在下面追加

 然后再追加

 comment = 介绍  这里可以随便写

 这个是共享的文件夹路径

不允许匿名登录

 继续追加

 继续追加

 这个是允许读取的用户

可以写入的用户

 

然后保存退出wq

然后访问 //samba主机ip

samba服务器selinux  和 防火墙 都要关闭 

systemctl restart smb

重启一下服务 

我们将/kali/tarro文件的权限改为777让用户写入   如果没有samba写入权限也会被拦截 

 可以正常访问

 登录tarro2

访问成功 

写入成功

返回服务器上看一下 

也可以看到 

但是他默认写入的权限  文件是 744    目录是 744

如果不想让他默认是这个可以修改


修改写入文件默认权限

vi /etc/samba/smb.conf

 

再次到这里继续追加

 

这个是写入的文件默认权限   拥有读写 

 

这个是目录默认权限

为 读写执行

然后保存退出

 systemctl restart smb

 

再次新建两个

 

 和第一次权限不同这次变成我所指定的权限了


本章持续更新——下次更新日期为:2023-6-9

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。