samba介绍

在 Windows网络环境中,主机之间进行文件和打印机共享是通过微软公司自己的 SMB/CIFS网络协议实现的。SMB( Server Message Block,服务消息块)和CIFS( Common Internet File System,通用互联网文件系统)协议是微软的私有协议,在 Samba项目出 现之前,并不能直接与 Linux/UNIX系统进行通信。

Samba是著名的开源软件项目之一,它在 Linux/Unix系统中实现了微软的SMB/ CIFS网络协议,从而使得跨平台的文件共享变得更加容易。在部署 Windows、 Linux UNIX混合平台的企业环境时,选用 Samba可以很好地解决不同系统之间的文件互访问题。

samba 匿名访问

rpm -ivh samba-3.6.9

mv /etc/samba/smb.conf /etc/samba/smb.conf.bak   ##备份配置文件

grep -v "#" smb.conf.bak > smb.conf    ##过滤出不带#的命令行

vim smb.conf

修改 
security = share 

在最下面插入

[test]
path = /opt/abc    ##共享的文件路径
public = yes        ##所有人都能访问
browseable = yes    ##可以通过网上邻居浏览
writable = yes         ##可以写入
create mask = 0644          ##创建权限设定
directory mask = 0755        ##文件夹权限设定

mkdir /opt/abc

chmod 777 /opt/abc

service smb start    ##开启服务

service iptables stop    ##关闭防火墙
setenforce 0     ##关闭增强安全功能

此时在客户机WINDOWS上, 用UNC 路径  \\192.168.x.x\abc   就可以进行访问

samba 账户访问

vim /etc/samba/smb.conf

修改
security = user

添加

[user]
path = /opt/user    ##共享的文件路径
public = yes        ##所有人都能访问
browseable = yes    ##可以通过网上邻居浏览
writable = yes         ##可以写入
create mask = 0644          ##创建权限设定
directory mask = 0755        ##文件夹权限设定
valid users = zhangsan    ##白名单 
write list = zhangsan    ##如果要设置这条,只允许zhangsan用户写入,需要把 writable = yes 删掉

useradd zhangsan
smbpasswd -a zhangsan

添加zhangsan用户

service smb restart

再通过 WINDOWS 客户机访问时 需要账户密码验证登录。

windows客户机可以通过 cmd 命令
输入 net use * /d 清除缓存

samba 账户映射

cd /etc/samba/
 vim smbusers 
zhangsan =u01 u02 

vim smb.conf
插入
username map = /etc/samba/smbusers

service smb restart

此时从windows客户机登录
使用u01 u02 可以代替zhangsan用户登录