首页 > 其他 > 详细

Samba文件共享服务

时间:2018-07-14 10:15:13      阅读:222      评论:0      收藏:0      [点我收藏+]
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。

 

实验准备

操作系统: linux Redhat6.5作为服务器、Windows7作为客户端

 

Samba文件共享服务搭建步骤

1.安装Samba软件包,并备份配置文件

rpm -ivh /mnt/Packages/samba-3.6.9-164.el6.x86_64.rpm

cd /etc/samba

mv smb.conf smb.conf.bak                 #先备份配置文件,以防出错无法恢复

grep -v "#" smb.conf.bak > smb.conf      #反向过滤配置文件中带有“#“的掉无用的注释内容,重定向到smb.conf文件中

2.设置可匿名访问的共享

2.1 创建共享文件夹,并更改文件夹的属性,以便于所有人都能操作

mkdir /opt/abc

chmod 777 /opt/abc

2.2 修改配置文件

vim /etc/samba/samba.conf

security = share         #安全级别改为share,登陆的匿名用户名为nobody

[share]                  #共享目录的名称

path=/opt/abc            #共享目录在服务器中对应的路径

public=yes               #是否允许所有人访问等效于guest ok        

browseable=yes           #允许访问,使共享目录在客户端的网上邻居中可见   

writable=yes             #允许写入,代表所有人,于read only的作用相反

create mask=0644         #用户上传的文件的默认权限

directory mask=0755      #创建子目录的默认权限

2.3 设置完成之后,开启服务,关闭防火墙和增强型安全功能

service smb start

service iptables stop

setenforce 0

2.4 匿名帐户测试

技术分享图片

技术分享图片

 

3.设置需本地用户验证的共享

3.1   创建共享文件夹

mkdir /opt/bendi

chmod 777 /opt/bendi

3.2 修改配置文件

vim /etc/samba/samba.conf

security = user                #本地用户访问改为user

[bendi]

path=/opt/bendi

browseable=yes

create mask=0644

directory mask=0755

valid users=zhangsan,lisi      #只允许指定用户登录

write list=lisi                #只允许指定用户写入

3.3 设置smb密码

smbpasswd -a zhangsan          #设置smb密码

smbpasswd -a lisi

smbpasswd –L                  #查看smb中的用户

3.4 重启服务

service smb restart

3.5 本地用户测试

技术分享图片

技术分享图片

在使用本地用户登陆之后,由于Windows7系统的缓存机制,所以需要使用系统命令提示符cmd输入net use * /d命令清理缓存后再次输入地址登陆lisi账户

技术分享图片

 

4.设置账户映射虚拟用户

4.1创建共享文件夹

mkdir /opt/username

chmod 777 /opt/username

4.2 修改账户的映射文件

vim /etc/samba/smbusers

zhangsan = u01 u02 u03          #在末尾添加共享账户映射的别名

4.3 修改配置文件

vim /etc/samba/samba.conf

[global]

security = user

username map=/etc/samba/smbusers   #在全局配置项添加

[username]

path=/opt/username

browseable=yes

create mask=0644

directory mask=0755

valid users=zhangsan

write list=zhangsan

4.4 重启服务

service smb restart

4.5 虚拟账户测试

技术分享图片

技术分享图片

 

5.访问地址限制

vim /etc/samba/samba.conf

#一般应用于全局配置[glodal]部分,也可以应用于某个具体的共享配置段部分

hosts deny = 192.168.10    192.168.20      #省去主机部分,黑名单

hosts allow =                              #白名单

                                           #两种方式任选其中一种即可

 

补充:Samba服务的日志文件位于 /etc/log/samba/ 目录中

netstat –anptu | grep “smbd”             #查看Samba服务的网络连接状态

smbd程序负责监听TCP协议的139端口(SMB协议)、445端口(CIFS协议)

nmbd服务程序负责监听UDP协议的137-138端口(NetBIOS协议)

 


Samba文件共享服务

原文:http://blog.51cto.com/13684970/2141964

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!