实测可用的samba多类型用户共享

1。首先服务器采用用户验证的方式,每一个用户能够访问本身的宿主目录,而且只有该用户能访问宿主目录,并具备彻底的权限,而其余人不能看到你的宿主目录。linux

2。创建一个caiwu的文件夹,但愿caiwu组和lingdao组的人能看到,network02也能够访问,但只有caiwu01有写的权限。windows

3。创建一个lindao的目录,只有领导组的人能够访问并读写,还有network02也能够访问,但外人看不到那个目录服务器

4。创建一个文件交换目录exchange,全部人都能读写,包括guest用户,但每一个人不能删除别人的文件。网络

5。创建一个公共的只读文件夹public,全部人只读这个文件夹的内容。测试

好,咱们先来前期的工做加密

创建3个组:
#groupadd caiwu.net

#groupadd networkunix

#groupadd lingdaorest


添加用户并加入相关的组当中:
#useradd caiwu01 -g caiwuorm

#useradd caiwu02 -g caiwu

#useradd network01 -g network

#useradd network02 -g network

#useradd lingdao01 -g lingdao

#useradd lingdao02 -g lingdao

而后咱们使用smbpasswd -a caiwu01的命令为6个账户分别添加到samba用户中

#mkdir /home/samba

#mkdir /home/samba/caiwu

#mkdir /home/samba/lingdao

#mkdir /home/samba/exchange

#mkdir /home/samba/public

咱们为了不麻烦能够在这里把上面全部的文件夹的权限都设置成777,咱们经过samba灵活的权限管理来设置上面的5点要求。

如下是个人smb.conf的配置文件

[global]

workgroup = bmit 

#个人网络工做组

server string = Frank's Samba File Server

#个人服务器名描述

security = user

#使用用户验证机制

encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd
#使用加密密码机制,在win95和winnt使用的是明文

其余的基本上能够按照默认的来。

[homes]
comment = Home Directories
browseable = no
writable = yes
valid users = %S
create mode = 0664
directory mode = 0775

#homes段知足第1条件

[caiwu]
comment = caiwu
path = /home/samba/caiwu
public = no
valid users = @caiwu,@lingdao,network02
write list = caiwu01
printable = no

#caiwu段知足咱们的第2要求

[lingdao]
comment = lingdao
path = /home/samba/lingdao
public = no
browseable = no
valid users = @lingdao,network02
printable = no

#lingdao段能知足咱们的第3要求

[exchage]
comment = Exchange File Directory
path = /home/samba/exchange
public = yes
writable = yes

#exchange段基本能知足咱们的第4要求,但不能知足每一个人不能删除别人的文件这个条件,即便里设置了mask也是没用,其实这个条件只要unix设置一个粘着位就行

chmod -R 1777 /home/samba/exchange 

注意这里权限是1777,相似的系统目录/tmp也具备相同的权限,这个权限能实现每一个人能自由写文件,但不能删除别人的文件这个要求

[public]
comment = Read Only Public
path = /home/samba/public
public = yes
read only = yes

#这个public段能知足咱们的第5要求。

到此为止咱们的设置已经能实现咱们的共享文件要求,记得重启服务哦

#/etc/rc.d/init.d/smb restart

若是你们没有winodws,不妨先用samba的cilent端命令来测试一下

命令的用法我在这里只举几个例子,具体的你们去试验

smbclient -L 服务器ip -N 

guest账户查询你的服务器的samba共享状况,你能够检验一下是否lingdao目录时候能被guest账户看到,应该是看不到的,固然你也能够以某个用户的名义查看

smbclient -L 服务器ip -U caiwu01

系统会提示密码,只要输入smb密码就行。

smbclient //服务器ip/caiwu -U caiwu01

#以caiwu01用户的名义登陆caiwu目录

smbmount //服务器ip/caiwu /mnt/caiwu -o username=caiwu01

#把服务器的财务目录映射到本地的/mnt/caiwu目录。
测试
smbclient -L //localhost/share 或者 
  smbclient-L \\127.0.0.1 -Umyname //这时输入的密码就是你刚才设置的samba密码

使用
一、windows用户
在个人电脑地址栏里输入\\192.168.1.1访问;也可windows+R输入\\192.168.1.1;
登陆后能够右击映射到本地驱动器。
net use * /delete
二、linux
(1)使用smbclient
#smbclient//192.168.1.1/Normal -U user%passwd
(2)挂载到某个目录使用
#mkdir/mnt/share
#mount -o username=youruser,password=passwd //192.168.1.1/Normal  /mnt/share
设置开机挂载将以下命令写入/etc/fstab
//192.168.1.1/share  /mnt/ml45  cifs  defaults,auto,username=youruser,password=passwd 0 0

而后#mount -a

sudo /etc/init.d/smbd restart

相关文章
相关标签/搜索