CentOS-7学习-samba服务配置

中文名信息服务块

英文名samba

全 称Server Messages Block

类 属软件

构 成服务器及客户端程序

运行环境局域网

Samba服务器组件

samba有两个主要的进程smbd和nmbd。smbd进程提供了文件和打印服务,而nmbd则提供了NetBIOS名称服务和浏览支持,帮助SMB客户定位服务器,处理所有基于UDP的协议

Samba服务器相关的配置文件:

/etc/samba/smb.conf

这是samba的主要配置文件,非常详细。主要的设置包括服务器全局设置,如工作组、NetBIOS名称和密码等级,以及共享目录的相关设置,如实际目录、共享资源名称和权限等两大部分。

/etc/samba/lmhosts

早期的 NetBIOS name需额外设定,因此需要这个lmhosts 的 NetBIOS name 对应的 IP 域。 类/etc/hosts 的功能

/etc/sysconfig/samba

提供启动 smbd, nmbd 时,你还想要加入的相关服务参数。

/etc/samba/smbusers

由于 Windows 与 Linux 在管理员与访客的账号名称不一致,例如: administrator (windows) 及 root(linux), 为了对应这两者之间的账号关系,可使用这个档案来设定

/var/lib/samba/private/{passdb.tdb,secrets.tdb}

管理 Samba 的用户账号/密码时,会用到的数据库档案

/usr/share/doc/samba-<版本>

这个目录包含了 SAMBA 的所有相关的技术手册

实验环境如下:

虚拟机版本:VMware17

Linux操作系统版本: Linux CentOS7

实验一:匿名访问

第一部分:基础五步

1,更改镜像源操作方便装包

连接光盘

右下角------设置------连接本地光盘

挂载光盘 mount /dev/sr0 /mnt 可以看到光盘挂载成功

编写仓库,进入到对应目录

cd /etc/yum.repos.d/

使用第一个作为仓库,拷贝一份

cp CentOS-Base.repo CentOS-Base.repo.bak

开始编写仓库

点击:进入末行模式,输入%d删除全文

输入:

ZYK

name=ZYK

baseurl=file:///mnt # 指定 yum 源的地址

gpgcheck=0 # 是检查GPG-KEY,0为不检查,1为检查

enabled=1 # 是否开启这个yum源,0为关闭,1为开启

清理缓存

建立缓存 yum makecache

刷新仓库

2,寻找我们需要的samba软件包

yum search samba

3,安装samba软件包

yum install samba

4,关闭selinux

vi /etc/selinux/config

setenforce 0

5,关闭防火墙 systemctl stop firewalld.service

6,根目录创建一个共享文件夹 mkdir /binbin

7,修改主要配置文件 vi /etc/samba/smb.conf

一定在第8条加上

在最后面加上四条path=/binbin

#查看前四条注释

一、查看详细配置示例:"See smb.conf.example for a more detailed config file"

含义:这是提示如果想要获取更详尽的配置文件内容,可以查看 smb.conf.example 。这个文件作为示例,包含了各种可能的配置项的设置情况,能帮助用户更好地理解 smb.conf 配置文件的结构和各项设置的具体形式。

二、查阅手册页:"read the smb.conf manpage"

含义:建议阅读 smb.conf 的手册页(manpage)。在Unix - like系统中,manpage是一种非常全面的文档资源,对于 smb.conf 的manpage来说,其中会深入讲解每个配置项的含义、可能的取值、不同取值对应的功能以及一些配置的最佳实践等内容。

三、验证配置:"Run 'testparm' to verify the config is correct after you modified it."

含义:在对 smb.conf 配置文件进行修改之后,运行 testparm 命令可以检查配置是否正确。这个命令会对 smb.conf 文件进行语法检查,同时还会显示出当前配置文件中实际生效的配置选项及其值。

8,重启SMB服务 systemctl restart smb

9,windows上win+r,再\\192.168.23.157

10,以上9步做完之后可以访问共享文件夹,但是不能创建、写入文件。这是因为第6步创建的共享文件夹默认权限是755,windows通过SMB服务访问共享文件夹是时它是others用户具有5权限,所以直接给/zhonyuekang加权限即可

chmod 777 /binbin

linux文件夹的默认权限775

对于所有者(Owner),无权限屏蔽,保持7(drwx)权限

对于所属组(Group),屏蔽写(w - 2)权限,变为5(dr - x)权限

对于其他用户(Others),屏蔽写(w - 2)权限,变为5(dr - x)权限

实验二:用户访问

第一部分:基础五步,见匿名访问 1-5

6,根目录新建一个共享文件夹

mkdir /share

7,给这个文件的755权限升为777权限,并验证

chmod 777 /share

ls -ld /share

8,新建用户,设置密码123456

useradd ZYK

echo 123456 | passwd --stdin ZYK

9,将用户加入到samba,密码123

pdbedit -au ZYK #pdbedit 是一个用于管理 Samba 服务用户账户的命令行工具

10,修改配置文件

vim /etc/samba/smb.conf

删除第8行的map to guest = bad user

添加信息加入合法用户然后保存

11,重启服务 systemctl restart smb

12,在Windows上面验证实验效果

win + r 然后输入//192.168.23.157

输入密码之后就能够访问这个文件夹,并且能够创建文件

Linux验证

yum install -y samba-client.x86_64

smbclient -L //192.168.23.128 -U ZYK%123

如果需要切换用户,请先清理缓存

C:\Users\Administrator>net use * /del /y

你有以下的远程连接:

\\192.168.23.157\IPC$

继续运行会取消连接。

命令成功完成。

/etc/samba/smb.conf 配置文件详解

相关推荐
ltl20 分钟前
大多数「无锁」代码其实不是无锁的
linux
ltl23 分钟前
Linux 内核的内存屏障:一个让我调了三天的 bug
linux
paopaokaka_luck1 小时前
基于springboot3+vue3的企业考勤管理系统(部门树递归、Echarts图形化分析)
开发语言·spring boot·学习·echarts·mybatis·需求分析·代码规范
minglie11 小时前
zynq高频小数据量PS闭环 抖动时间的测量
学习
long3162 小时前
MySQL 学习练习(配套 01 入门资料)
数据库·学习·mysql
Lonely 净土3 小时前
Rocky Linux 安装教程
linux·运维·服务器
梦雨生生3 小时前
java开发工具(学习第一天)
java·开发语言·学习
李白你好7 小时前
Windows 离线 Linux 提权辅助查询工具
linux
Lust Dusk7 小时前
记一次Linux应急响应题目解析
linux·运维·服务器·网络·安全·网络安全
ShineWinsu8 小时前
对于Linux:五种IO模型以及非阻塞IO的详细解析
linux·c++·面试·io·阻塞·非阻塞·fcntl