一、Samba服务介绍
SMB(Server Messge Block)协议是实现网络上不同类型计算机之间文件和打印机共享服务的协议。
工作原理:
让NetBIOS协议与SMB协议运行在TCP/IP之上,并且利用NetBIOS的名字解释功能让linux计算机与Windows计算机可以互相识别,从而实现linux与Windows之间互相访问共享文件和打印机的功能。
结构拓扑图:
二、Samba服务安装
操作前记得把防火墙和selinux关闭哦
Samba 软件包安装
yum install samba
Samba 配置文件
Samba 配置文件在/etc/samba/smb.conf
文件中,该文件采用分节结构
[global]
[homes]
[printers]
[global] # 全局参数配置节点
workgroup = SAMBA # 工作组
security = user # 安全级别 【share | user | server 】
# - share 无需用户名和密码即可登录
# - user 需要输入Samba用户名和密码,验证通过即可访问
# - server 由Windows域控服务器复制验证Samba用户名和密码,且必须指定域控服务器额NetBIOS名称
passdb backend = tdbsam # 账号的加密方式
printing = cups
printcap name = cups
load printers = yes
printcap name = cups
load printers = yes
cups options = raw
[homes] # 共享用户主目录节点
comment = Home Directories # 共享表述,相当于banner
valid users = %S, %D%w%S # 运行访问共享目录的账户
browseable = No # 共享目录是否可浏览,默认yes
read only = No # 共享目录是否只读 ,否表示可写 等效于 writable = yes
inherit acls = Yes
[printers] # 打印机共享节点
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
三、 Samba 服务器配置
3.1 所有用户均可登录Samba服务器
(1)修改全局配置文件
[global]
# security = share # centos6 及其红帽 配置写这条参数
security = user # centos7 及其以上 配置写这条参数
map to guest = Bad User
......
[public]
path = /tmp/public
writable = yes
guest ok = yes
(2)测试配置文件
[root@centos7-107 tmp]# testparm
Load smb config files from /etc/samba/smb.conf
Loaded services file OK. # 配置文件无误
Server role: ROLE_STANDALONE
(3)测试连接.
启动服务
# 1. 启动服务
systemctl start smb # 适用于centos 7 及其以上
# service smb start # 适用于centos6 及其红帽
在文件夹地址栏输入 \\192.168.100.107
你的服务器地址回车,就可以看见共享文件夹
3.2 用户认证登录Samba服务器
(1)创建Samba用户
useradd jack
passwd jack
pdbedit -a jack # 将普通用户jack 设置为Samba 用户
pdbedit -L # 查看所有Samba用户
(2)重启服务
systemctl restart smb
(3)连接测试
输入用户名和密码
登录成功