本实验环境:
系统:centos7
samba服务:samba-4.4.4-9.el7.x86_64
samba的作用:samab是文件共享服务,打印机共享等,用于和windows一起工作。
samba服务有两个服务程序,分别是smb和nmb。smb主要负责客户机提供服务器中的共享资源(文件和目录的访问) nmb负责提供NetBIOS协议的主机名称解析,便于windows网络中的主机进行查询服务。
实验前准备:
systemctl stop firewalld.service ###这里是关闭防火墙,当然也可以添加规则
setenforce 0 ###关闭slinux
查询系统中是否安装samba服务
rpm -qa samba
如果没安装:yum install samba -y
启动服务:
systemctl start smb.service
systemctl start nmb.service
查看服务运行状态:
systemctl status smb.service
● smb.service - Samba SMB Daemon
Loaded: loaded (/usr/lib/systemd/system/smb.service; disabled; vendor preset: disabled)
Active: active (running) since 五 2017-05-12 10:05:06 CST; 58min ago
Main PID: 3307 (smbd)
Status: "smbd: ready to serve connections..."
CGroup: /system.slice/smb.service
├─3307 /usr/sbin/smbd
├─3308 /usr/sbin/smbd
├─3309 /usr/sbin/smbd
└─3310 /usr/sbin/smbd
匿名访问:
配置文件默认位置:vim /etc/samba/smb.conf
事先创建共享文件夹public mkdir public
给出权限:chmod 777 public
1.先将配置文件备份,利于回滚
cp smb.conf smb.confbak
2.修改配置文件
[global]
workgroup = SAMBA
security = user ###samba 4.0版本中share方式被弃用,所以要下面加上一行(红字部分)
map to guest = bad user ###实现匿名无需交互输入用户名和密码
passdb backend = tdbsam
.............
需要添加的内容(默认没有的)
[share]
path = /public ###共享文件夹
public = yes ###是否可以访问文件夹
writable = yes ###可写内容 (no为不可写,只可下载)
................
3.重启smb服务:
systemctl restart smb.service
4.测试访问
windows机器上 \\+ip
用户验证的共享:
用户验证可以进一步提高samba的安全性,因为匿名访问,任何人都可以访问到,在某种时候,会造成信息泄露。
设置用户验证主要修改配置文件两个地方:
一:安全级别user
二:添加共享目录,指定权限
1.创建用户,将用户加入到samba用户并设置密码(系统用户转化为samba)
# useradd test -s /sbin/nologin
# smbpasswd -a test
New SMB password:
Retype new SMB password:
Added user test.
2.修改配置文件
security = user ###安全级别
新增加字段:
[sharename]
comment = name share
path = /public ###共享文件夹
valid users = test ###登陆用户
public = yes ###访问权限
writable = yes ###是否允许写入
create mask = 0765 ###创建文件和文件夹的权限
重启smb服务即可
除了对指定的共享目录设置用户外,还可以做访问地址限制等措施。
在[global]中 加入:hosts allow = ip地址
希望我的努力能帮助更多的人!
本文出自 “帅小欣” 博客,请务必保留此出处http://jiaxinwang.blog.51cto.com/12273793/1925002
原文地址:http://jiaxinwang.blog.51cto.com/12273793/1925002