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 配置文件详解

相关推荐
内核程序员kevin3 小时前
TCP Listen 队列详解与优化指南
linux·网络·tcp/ip
朝九晚五ฺ7 小时前
【Linux探索学习】第十四弹——进程优先级:深入理解操作系统中的进程优先级
linux·运维·学习
自由的dream7 小时前
Linux的桌面
linux
xiaozhiwise8 小时前
Makefile 之 自动化变量
linux
猫爪笔记9 小时前
前端:HTML (学习笔记)【1】
前端·笔记·学习·html
pq113_69 小时前
ftdi_sio应用学习笔记 3 - GPIO
笔记·学习·ftdi_sio
谭震鸿9 小时前
Zookeeper集群搭建Centos环境下
分布式·zookeeper·centos
澄澈i9 小时前
设计模式学习[8]---原型模式
学习·设计模式·原型模式
意疏10 小时前
【Linux 篇】Docker 的容器之海与镜像之岛:于 Linux 系统内探索容器化的奇妙航行
linux·docker