公司如何利用Samba搭建文件服务器
对于一个完整的计算机网络,不仅有 Lin网络服务器,也会有 Windows Server网络服务器;不仅有 Lin 客户端,也会有 Windows 客户端。利用 Samba 服务可以实现 Lin系统和 Microsoft 公司的 Windows 系统之间的资源共享,以实现文件和打印共享。
小编为大家介绍一个案例:公司中如何利用Samba搭建文件服务器
一、企业环境与需求
1.准备工作
1)租用一台服务器
2)在服务器里安装与配置Smaba
2.Samba 服务器目录
公共目录/share。
销售部/sales。
技术部/tech。
3.企业员工情况
主管:总经理 master。
销售部:销售部经理 mike,员工 sky,员工 jane。
技术部:技术部经理 tom,员工 sunny,员工 bill。
公司使用 Samba 搭建文件服务器,需要建立公共共享目录,允许所有人访问,权限为只读。为销售部和技术部分别建立单独的目录,只允许总经理和对应部门员工访问,并且公司员工无法在网络邻居查看到非本部门共享目录。企业网络拓扑如图 4-13 所示。
二、需求分析
对于建立公共的共享目录,使用 public 字段很容易实现匿名访问。但是,注意后面公司的需求,只允许本部门访问自己的目录,其他部门的目录不可见!这需要设置目录共享字段“browsable=no” ,以实现隐藏功能,但是这样设置,所有用户都无法查看该共享。因为对同一共享目录,有多种需求,一个配置文件无法完成这项工作,这时需要考虑建立独立配置文件,以满足不同员工访问需要。但是不要被列出的员工名单影响,为每个用户建立一个配置文件, 显然操作太繁琐了。 我们可以为每个部门建立一个组, 并为每个组建立配置文件,实现隔离用户的目标。
三、解决方案
Step1:建立各部门专用目录。
使用 mkdir 命令,分别建立各部门存储资料的目录。
[root@RHEL4 ~]# mkdir /share
[root@RHEL4 ~]# mkdir /sales
[root@RHEL4 ~]# mkdir /tech
Step2:添加用户和组
先建立销售组 sales,技术组 tech,然后使用 useradd 命令添加经理账号 master,并将员
工账号加入到不同的用户组。
[root@RHEL4 ~]# groupadd sales
[root@RHEL4 ~]# groupadd tech
[root@RHEL4 ~]# useradd master
[root@RHEL4 ~]# useradd -g sales mike
[root@RHEL4 ~]# useradd -g sales sky
[root@RHEL4 ~]# useradd -g sales jane
[root@RHEL4 ~]# useradd -g sales tom
[root@RHEL4 ~]# useradd -g tech sunny
[root@RHEL4 ~]# useradd -g tech bill
然后使用 smbpasswd 命令添加 Samba 用户,具体操作请参照 4.3.2 小节相关内容。
配置 smb.conf 文件
(1)建立配置文件
用户配置文件使用用户名命名,组配置文件使用组名命名。
[root@RHEL4 ~]# cp smb.conf master.smb.conf
[root@RHEL4 ~]# cp smb.conf sales.smb.conf
[root@RHEL4 ~]# cp smb.conf tech.smb.conf
(2)设置主配置文件 smb.conf
首先使用 vi 编辑器打开 smb.conf。
[root@RHEL4 ~]# vi smb.conf
编辑主配置文件,添加相应字段,确保 Samba 服务器会调用独立的用户配置文件,以
及组配置文件。
[global]
workgroup = WORKGROUP
server string = file server
security = user
include=/etc/samba/%U.smb.conf
include=/etc/samba/%G.smb.conf
[public]
comment =public
path = /share
public = Yes
① 使 Samba 服务器加载/etc/samba 目录下,格式为“用户名.smb.conf”的配置文件。
② 保证 Samba 服务器加载格式为“组名.smb.conf”的配置文件。
(3)设置总经理 master 配置文件
使用 vi 编辑器修改 master 账号配置文件 master.smb.conf,如下所示。
[global]
workgroup = WORKGROUP
server string = file server
security = user
[public]
comment =publiC
path = /Share
public=yes
[sales]
comment = sales
path= /sales
valid users = master
[tech]
comment = tech
palth= /tech
valid users = master
① 添加共享目录 sales,指定 samba 服务器存放路径,并添加 valid users 字段,设置访问用户为 master 账号。
② 为了使 master 账号访问技术部的目录 tech, 还需要添加 tech 目录共享, 并设置 valid
users 字段,允许 master 访问。
(4)设置销售组 sales 配置文件
编辑配置文件 sales.smb.conf,注意 global 全局配置以及共享目录 public 的设置,保持
和 master 一样,因为销售组仅允许访问 sales 目录,所以只添加 sales 共享目录设置即可,如
下所示。
[sales]
comment = sales
path = /sales
valid users = @sales, master
(5)设置技术组 tech 的配置文件
编辑 tech.smf.conf 文件,全局配置和 public 配置与 sales 对应字段相同,添加 tech 共享
设置,如下所示。
[tech]
comment = tech
path = /tech
valid users = @tech, master