构建Samba文件共享服务

SMB协议

Server Message Block,服务消息块

CIFS协议

Common Internet File System,通用互联网文件系统


Samba软件包构成

  • samba

  • samba-common

  • samba-client

  • samba-swa


Samba服务器的主要程序

  • smbd:提供对服务器中文件、打印资源的共享访问,端口(TCP:139,445)

  • nmbd:提供基于NetBIOS主机名称的解析,端口(UDP:137,138)

Samba的服务脚本

  • /etc/init.d/smb

Samba的配置目录及文件

  • /etc/samba/

  • /etc/samba/smb.conf

配置文件检查工具:testparm


smb.conf文件的配置内容

  • [global]:全局设置

  • [homes]:用户目录共享设置

  • [printers]:打印机共享设置

  • [myshare]:自定义名称的共享目录设置

辅助配置内容

  • 注释行:以 # 号开头的行

  • 配置样例行:以 ; 号开头的行

  • 结合grep命令可以提取有效配置行: grep -v "^#" smb.conf | grep -v "^;" | grep -v ^$


常见全局配置项的含义

  • workgroup:所在工作组名称

  • server string:服务器描述信息

  • security:安全级别,可用值如下:share、user、server、domain

  • log file:日志文件位置,“%m”变量表示客户机地址

  • max log size:日志文件的最大容量,单位为KB

  • passwd backend:设置共享账户文件的类型


常见共享目录配置项的含义

  • comment:对共享目录的注释、说明信息

  • path:共享目录在服务器中对应的实际路径

  • browseable:该共享目录在“网上邻居”中是否可见

  • guest ok:是否允许所有人访问,等效于“public”

  • writable:是否可写,与read only的作用相反


访问地址限制

  • 一般用在全局配置[global]部分

  • hosts allow配置项:仅允许特定的客户机

  • hosts deny配置项:仅拒绝特定的客户机

  • 客户机地址表示形式:

  1. 以空格分隔多个地址

  2. 主机名或IP地址,例如: 192.168.168.11 或者 prtsvr

  3. 网络地址,例如:173.17. 或者 173.17.0.0/255.255.0.0


实验案例

需求描述

  • 创建共享目录public、training、devel

  • 目录public,所有员工都可以访问,但只读

  • 目录training目录,存放公司的技术培训资料

  • 目录devel存放项目开发数据

实现思路

  • 创建共享目录,并设置目录权限

  • 修改smb.conf,添加共享设置,并重启服务

  • 在客户机以不同的用户访问共享文件夹


在/var/share/目录中建立三个子目录public,training,decal

171340857.png


建立用户和组

171340639.png


修改devdl目录的属组和权限

171340414.png


添加删除samba的共享用户

pdbedit

-a 添加

-x 删除

-u 指定用户名

-L 列出所有samba用户

171341449.png

171341118.png


修改smb.conf配置文件

171341287.png

171342160.png

171342163.png

171342391.png


启动smb服务

171343167.png

在共享目录中新建一点文件

171343671.png


检查smb.conf文件

171343718.png


在其它客服机上验证,先拿yua01用户

171344186.png

171344232.png


能访问public目录

171344106.png

171345730.png


但是访问其它目录就拒绝访问了

171345637.png


下面拿ben01用户测试

171346777.png


所有共享目录都能访问

171346789.png

171346799.png

171346660.png

171347857.png


也能写入

171347747.png


下面拿tec01用户测试

171347442.png

171348721.png


能访问所有共享目录

171348791.png

171348730.png

171348823.png


但是没有写入的权限

172131888.png

你可能感兴趣的:(linux,操作系统,samba,共享)