构建Samba文件共享服务器

一、实验需求

1、/var/share/目录中建立三个子目录publictrainingdevel,用途如下。

l public目录用于存放公共数据,如公司的规章制度、员工手册等;

l training目录用于存放公司的技术培训资料;

l devel目录用于存放项目开发数据。

2、/var/share/public/目录共享为public,所有员工都可以访问,但只有读取权限。

3、/var/share/training/目录共享为peixun,允许管理员admin和技术部 断得所有员工读取数据,但不能写入;禁止其他人访问。

4、/var/share/devel/目录共享为kaifa,技术部的所有员工都可以读取该目录中的文件,但是只有管理员adminBENET项目组的员工有写入权限。

注:创建BENET项目组的组账户benet,技术部的组账户tech

二、实验步骤

1、安装samba软件包  

[root@localhost ~]# yum -y install samba  //使用yum安装samba软件包,并且不需要交互。

2、建立账号  

l 创建组账户tech

[root@kimi ~]# groupadd tech    //添加一个tech

[root@kimi ~]# tail -2 /etc/group    //查看/etc/groupd的最后两行,确定建tech组成功。

sally:x:500:

tech:x:501:

l 创建组帐号benet  

[root@kimi ~]# groupadd benet

[root@kimi ~]# tail -2 /etc/group

tech:x:501:

benet:x:502:

l 创建benet员工账户benet01benet02并将其加入benet组账户

[root@kimi ~]# useradd benet01  //创建员工账号benet01

[root@kimi ~]# useradd benet02

[root@kimi ~]# tail -2 /etc/passwd  //查看文件/etc/passwd确定创建用户的状态

benet01:x:501:503::/home/benet01:/bin/bash

benet02:x:502:504::/home/benet02:/bin/bash

[root@kimi ~]# gpasswd -M benet01,benet02 benet  //将用户benet01benet02同时加入benet

[root@kimi ~]# grep "^benet" /etc/group  //查看benet组有那些成员

benet:x:502:benet01,benet02


l 创建tech(技术部)员工账户tech01tech02并将其加入到tech组账户

[root@kimi ~]# useradd tech01

[root@kimi ~]# useradd tech02

[root@kimi ~]#  tail -2 /etc/group

tech01:x:505:

tech02:x:506:

[root@kimi ~]# gpasswd -M tech01,tech02 tech

[root@kimi ~]# grep "^tech" /etc/group

tech:x:501:tech01,tech02

l 创建普通用户zhangsan

[root@kimi ~]# useradd zhangsan

[root@kimi ~]#  tail -1 /etc/passwd

zhangsan:x:504:506::/home/zhangsan:/bin/bash

3、创建存放共享资源的文件  

[root@kimi ~]# cd /var  //切换到/var目录

[root@kimi var]# mkdir -p share/public  ///var下创建一个share文件夹并同时在share文件夹下创建public文件夹

[root@kimi var]# mkdir share/training  //share文件夹下创建training文件夹  [root@kimi var]# mkdir share/devel

[root@kimi var]# ls share  //查看share文件夹下的目录  

devel  public  training

[root@localhost ~]# chmod 777 /var/share/public  ///var/share/public的权限设为最高

[root@localhost ~]# ls -ld /var/share/public //查看/var/share/public的权限

drwxrwxrwx. 2 root root 4096 3月   4 22:12/var/share/public


[root@localhost ~]# chmod 777 /var/share/devel

[root@localhost ~]# ls -ld /var/share/devel

drwxrwxrwx. 2 root root 4096 3月   4 22:12/var/share/devel


4、创建samba共享用户zhangsanbenet01benet02tech01tech02root


[root@localhost var]# pdbedit -a -u benet01

[root@localhost var]# pdbedit -a -u benet02

[root@localhost var]# pdbedit -a -u tech01

[root@localhost var]# pdbedit -a -u tech02

[root@localhost var]# pdbedit -a -u zhangsan

[root@localhost var]# pdbedit -a -u root  //添加共享用户root

new password:           //设置共享用户root的密码

retype new password:          //重复输入密码进行确定

Unix username:        root

NT username:

Account Flags:        [U          ]

User SID:             S-1-5-21-1096093026-923259393-2614225526-1005

Primary Group SID:    S-1-5-21-1096093026-923259393-2614225526-513

Full Name:            root

......   //省略部分内容

5、root用户设置别名admin  

[root@localhost ~]# vi /etc/samba/smbusers   //进入共享账号的映射文件编辑别名

wKiom1McgvOi3iCWAADy6kMUBU0189.jpg

6、修改smb.conf文件

[root@localhost ~]# cd /etc/samba  //切换到/etc/samba目录

[root@localhost samba]# cp smb.conf smb.conf.backup   //复制samba配置文件smb.conf,复制名为smb.conf.backup  [root@localhost samba]# ls

lmhosts  smb.conf  smb.conf.backup  smbusers


[root@localhost samba]# grep -v "#" smb.conf.backup | grep -v "^;" | grep -v "^$" >smb.conf   //将文件smb.conf.backup中的“#”、“;”、“空格”全部过滤并导入到文件smb.conf  

[root@localhost samba]# vi smb.conf   //进入smb.conf配置文件

wKioL1Mcgt6hRR4rAAFcKIpgxoI104.jpg



.......   //中间省略

[printers]

       comment = All Printers

       path = /var/spool/samba

       browseable = no

       guest ok = no

       writable = no

       printable = yes  

[public]          //添加名为public的共享目录

       path = /var/share/public     //指定共享目录的路径  

       public = yes   //指定所有人可见

       writable = no   //指定不可写入  

[peixun]

       path = /var/share/training

       public = no

       valid users = admin, @tech   //指定用户admin和组tech可   以访问  [kaifa]

       path = /var/share/devel

       public = no

       valid users = admin, @tech, @benet

       write list = admin, @benet    //指定用户adminbenet组可以写入

[root@localhost samba]# service smb start   //开启samba服务

wKiom1McgxWD1_7PAADn9FFuG7o410.jpg

[root@localhost ~]# service iptables stop    //关闭防火墙

[root@localhost ~]# setenforce 0        //关闭Linux的安全模式

7、验证实验结果

A验证共享文件夹“public”能被所有人访问,并且不能写入。

l 在“开始”输入服务器的UNC路径

wKiom1McgyzzBAqyAABnVgfBITY106.jpg

l 在跳出的用户验证界面输入普通用户名:zhangsan;密码:......

wKioL1Mcgy6Az4TPAAENRV61avA307.jpg

l 跳出服务器共享的文件界面

wKioL1Mcg0PzzeHeAAJQ7c3vg64746.jpg

l 成功进入“public”文件夹,不可以在文件夹内创建文件,如下图所示:

wKiom1Mcg-eA_gKOAAKD0Ny7OWg465.jpg

B、验证共享文件夹“peixun”能被技术部访问,并且不能写入。

[root@localhost samba]# service smb restart  //微软缓存比较久所以再次启动smb服务器,用于其他文件夹的验证。

wKioL1Mcg9WRpJUmAADn9FFuG7o054.jpg

l 用“net use /d *清空真机的缓存

wKiom1MchA_TgtfEAACmR1kiKUE023.jpg

l 在“开始”输入访问“peixun”的UNC路径

wKioL1MchDKCeavkAABlQfWSHl0337.jpg

l 输入用户名:tech01,密码:.......,如下图所示

wKioL1MchNywBKTuAAEK_5oQLrw935.jpg

l tech01的身份在共享文件“peixun”里创建文件夹,如下图所示,表示“peixun”共享文件夹能被技术部访问并且不能写入。

wKioL1Mcg1qRb-R1AAKOwtj-0kk149.jpg

C、验证共享文件夹“kaifa”能被技术部和BENET项目部访问,并允许BENET项目组写入。

l 在“开始”输入访问共享文件“kaifa”的UNC路径,如下图所示:


wKioL1MchACj39pEAAB-utwX4rU451.jpg

l tech01的身份在共享文件“kaifa”里创建文件夹,如下图所示,表示tech01在“kaifa”中只可阅读不可写入。

wKiom1MchWLg1qkJAAKN18g93SY638.jpg


l 跳出的用户认证界面输入用户名:benet01;密码:......

wKioL1MchVeSYuYgAAEoT5cop28699.jpg

l benet01的身份可以访问“kaifa”文件夹,如下图所示

wKiom1MchY-jgnAxAAIHU896fbY351.jpg

l benet01在“kaifa”里创建文件夹,如下图所示,表示用户benet01可以在共享文件夹“kaifa”里写入。

wKioL1MchXyjjVGdAAIhOjkwqtc377.jpg

D、验证共享文件夹“peixun”不能被BENET项目组访问

l 用用户benet01访问“peixun”文件夹,如下图所示,说明用户benet01不可以访问“peixun”文件夹。

wKiom1MchbChDw5rAAM7HovAEbQ340.jpg



That over


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章