0


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 目录是 755

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


修改写入文件默认权限

vi /etc/samba/smb.conf

再次到这里继续追加

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

这个是目录默认权限

为 读写执行

然后保存退出

systemctl restart smb

再次新建两个

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


Linux访问samba共享文件

客户端Linux需要安装samba-client软件

yum -y install samba-client

安装完成

smbclient -L smb服务器ip -U 用户

smbclient -L 192.168.1.1 -U tarro2

查看共享文件内容

输入密码就能查看到

smbclient -U 用户 //smb服务器ip/目录

smbclient -U tarro2 //192.168.1.1/TARRO

输入密码后进入到

smb:>

就成功进入了

exit可以退出

我们要将里边的文件下载到本地就使用 get

get + 文件名

get 123.txt

exit退出

默认下载到home目录

如果要上传文件就使用 put

put + 本地文件名

put 123123.txt

exit可以退出

平时这样登录很麻烦 , 聪明的攻城狮就会有解决办法 直接将共享文件夹挂载到本地即可

mount -o username=用户名,password=登录用户密码 //IP/目录 /本机挂载点
mount -o username=tarro2,password=123 //192.168.1.1/TARRO /opt

将共享文件夹挂载到本地的opt下

我们这个tarro有写入权限 进去之后和正常文件一样

如果使用tarro1只有只读时候 往文件内写入东西会有报错

标签: linux 服务器 运维

本文转载自: https://blog.csdn.net/w14768855/article/details/131114523
版权归原作者 鲍海超-GNUBHCkalitarro 所有, 如有侵权,请联系我们删除。

“Linux:samba服务 (smbd)”的评论:

还没有评论