1
企业环境及需求
服务器环境: RHEL5.1
samba服务器目录:
企业数据目录: /companydata
公共目录: /companydata/share
销售部目录: /companydata/sales
技术部:/companydata/tech<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
服务器环境: RHEL5.1
samba服务器目录:
企业数据目录: /companydata
公共目录: /companydata/share
销售部目录: /companydata/sales
技术部:/companydata/tech<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
企业员工情况:
经理:
manager
销售部:销售部经理
king
、员工
sky
、员工
jay.......
技术部:技术部经理
kyhack
、员工
bill
、员工
kai ....
2
需求分析
对于建立公共目录
public
字段就可以实现匿名访问,员工只能访问本部门的共享目录,禁止访问非本部门的共享目录,我们可以通过设置目录共享字段“
browseable = no
”及字段“
valid users
”来实现其隐藏功能和相应的访问权限。这样设置不能很好得解决同一目录多种需求的权限设置,所以我们需要建立独立配置文件,为每个部门建立一个组后并为每个组建立配置文件来实现隔离用户权限会比较灵活。
3 解决方案
1
)建立各部门专用共享目录
使用
mkdir
建立需求的共享目录以便分门别类的存储相应资料。
[root@rhel5 ~]# mkdir /companydata
[root@rhel5 ~]# mkdir /companydata/share
[root@rhel5 ~]# mkdir /companydata/sales
[root@rhel5 ~]# mkdir /companydata/tech
[root@rhel5 ~]# chmod -R 777 /companydata/
//
设置共享目录权限
2
)添加
samba
服务器描述及设置
smbpasswd
文件
workgroup = worgroup
//
设置工作组
server string = Company Samba File Server
//
服务器描述
#passdb backend = tdbsam
//
注释掉,为了指定
Samba
用户验证
smb passwd file = /etc/samba/smbpasswd
//
添加这一条,指定
samba
密码存放位置
默认
/etc/samba/
目录下没有
smbpasswd
文件
,
我们要先关闭
samba
的
tdbsam
验证。再加上这一条
smb passwd file = /etc/samba/smbpasswd
,然后保存退出。
3) 添加用户和组
3) 添加用户和组
为各个部门建立相应的组,先建立销售部组
sales
,技术部组
tech
,然后用
useradd
命令添加总经理帐号
manager
及各个员工的帐号并加入相应的用户组。
[root@rhel5 ~]# groupadd sales
[root@rhel5 ~]# groupadd tech //
添加组
[root@rhel5 ~]# useradd manager
[root@rhel5 ~]# useradd -g sales king
[root@rhel5 ~]# useradd -g sales sky
[root@rhel5 ~]# useradd -g sales jay
[root@rhel5 ~]# useradd -g tech kyhack
[root@rhel5 ~]# useradd -g tech bill
[root@rhel5 ~]# useradd -g tech kai //
添加用户并加到相应的组
[root@rhel5 ~]# smbpasswd -a king
New SMB password:
Retype new SMB password:
Added user king.
[root@rhel5 ~]# smbpasswd -a sky
New SMB password:
Retype new SMB password:
Added user sky. ……………… //
添加
samba
用户
4 )配置 smb.conf 文件
(
1
)建立单独配置文件
用户配置文件使用用户名命令哈,组配置文件使用组名命令。
[root@rhel5 samba]# ls
manager.smb.comf
passdb.tdb secrets.tdb smbpasswd tech.smb.conf
lmhosts sales.smb.comf smb.conf smbusers
(
2
)设置主配置文件
smb.conf
这里我们配置
smb.conf
主配置文件,在
global
中添加相应字段哈,确保
samba
服务器的主配置文件可以调用独立的用户配置文件和组配置文件。
workgroup = workgroup
server string = company samba file server
include = /etc/samba/%U.smb.conf
//
加载
/etc/samba
目录下格式为
“
用户名
.smb.conf”
的配置文件
include = /etc/samba/%G.smb.conf //
加载
/etc/samba
目录下格式为
“
组名
.smb.conf”
的配置文件
[public]
comment = company share
path = /companydata/share
public = yes
( 5 )设置总经理 manager 配置文件
vim /etc/samba/manager.smb.conf
[sales]
comment = sales data
path = /companydata/sales
writable = yes
valid users = manager
[tech]
comment = tech tata
path = /companydata/tech
writable =yes
valid users = manager
( 6 )设置销售部组 sales 配置文件
vim /etc/samba/sales.smb.conf
[sales]
comment = sales data
path = /companydata/sales
writable = yes
valid users = @sales ,manager
#
设置访问组
( 7 )设置技术部组 tech 配置文件
vim /etc/samba/tech.smb.conf
[tech]
comment = company tech
path = /companydata/tech
writable =yes
valid users = @tech,manager
(
8
)开启
samba
服务
service smb start
本文参考:王乾的
第2季 Samba服务全攻略
转载于:https://blog.51cto.com/kyhack/196182