实验需求:1) 使用RPM包安装samba服务

2) 实现匿名访问,验证可以读写文件、目录

3) 实现指定用户的访问

4) 实现指定用户的访问,并为用户赋予不同的权限

启动LINUX系统,进行SAMBA服务器配置,并截图。

1.      为linux服务器的网卡设置IP地址:192.168.x.1/2,设置完毕后进入命令终端,查看设定的IP是否生效,用命令:ifconfig eth0,如果没有生效,重启网络服务,用命令:service network restart;虚拟机 XP系统IP地址设置为:192.168.x.2/24。(注:x为自己学号最后两位)

2.     在/media目录下新建目录RHEL,把第二个光驱/dev/sr1挂载到该目录(注:挂载前先把第二个虚拟光驱装载ISO文件,并连接)

  #mkdir /media/RHEL

      #mount /dev/sr1 /media/RHEL

4.安装Samba程序包

    安装前先用ls搜索Samba相关软件包,命令提示:#ls /media/RHEL/Packages/samba*

命令提示#rpm -ivh /media/RHEL/Packages/samba-3.6.9-164.el6.i686.rpm

5. 实现匿名访问,验证可以读写文件、目录

1) vi命令编辑samba主配置文件

[root@localhostsamba]# vi /etc/samba/smb.conf  #编辑主配置文件

[global]

workgroup = MYGROUP

server string = Samba Server Version %v

;     netbios name = MYSERVER

;     interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24

;     hosts allow = 127. 192.168.12. 192.168.13.

log file = /var/log/samba/log.%m

max log size = 50

security = share  

passdb backend = tdbsam

以上为[global]全局模式的配置内容,其他保持默认即可,我们关心的是如果要实现匿名访问,只需要修改 security 使安全级别为share(默认的为user)

下面是对share共享目录进行配置,在配置文件的末尾插入以下行

[share]                #指定目录的共享名称  

path= /opt/share       #指定共享share这个目录 

public= yes            #public设为yes允许匿名用户访问 

browseable= yes        #让匿名用户可以看到共享内容 

writable= yes          #设置可以有写入的权限 

create mask = 0644     #设置新建文件的权限,表示属主具有读写权限,其他人都只有只读权限(rw-r--r--) 

directory mask = 0755  #设置新建目录的权限,表示属主具有读写执行权限,其他人没有写入权限(rwxr-xr-x)

2)新建共享目录并启动samba服务

[root@localhostsamba]# mkdir /opt/share  #创建share共享目录

[root@localhostsamba]# chmod 777 /opt/share  #修改权限为777 

[root@localhostsamba]# service smb start  #启动samba服务

3)测试之前,必须把防火墙和selinux关掉

[root@localhost samba]# service iptables stop #关掉防火墙

[root@localhost samba]# setenforce 0  #关掉selinux服务

6. 效果验证:

1) 在客户机XP系统上测试能否ping通服务器,进入CMD控制台,ping 服务器IP 192.168.x.1

2) 在【开始】菜单的运行框中输入\\192.168.x.1,可以看到名为share的共享文件夹

3) 进入share文件夹,新建文件aa.txt和文件夹guest,在文件aa.txt里可以写入任何内容,文件夹下也能够再新建文件,和配置文件里的设置是一样的,匿名访问成功。

4) 切换到linux服务器,我们通过命令ls –l /opt/share查看共享文件夹下匿名用户访问时新建的文件,发现属主和属组都是nobody,新建的文件权限是644,文件夹的权限是755

nobody是一个系统账号,匿名访问新建的就会显示为nobody

7.  实现指定用户的访问

1) vi命令samba主配置文件

[root@localhost 桌面]# vi /etc/samba/smb.conf  #编辑主配置文件

因为是要指定用户进行访问了,所以[global]全局模式里面只需要修改security ,使默认安全级别为user(默认值)

security = user

下面是根据具体的共享目录进行配置,在配置文件的末尾插入以下行,新建一个test  的目录的共享配置,不让他匿名访问,只有指定用户才能访问

[test]                 #指定目录的共享名称

path= /opt/test        #指定共享test目录

browseable= yes        #设置可以看到共享内容

writable= yes          #设置可以有写入的权限

create mask = 0644     #设置新建文件的权限,表示属主具有读写权限,其他人都只有只读权限(rw-r--r--) 

directory mask = 0755  #设置新建文件夹的权限,表示属主具有读写执行权限,其他人没有写入权限(rwxr-xr-x)

2) 系统当中的用户当然也可以访问共享目录,但是我们这里希望用samba自己的账户来访问,新建两个用于samba的账户并设置他们的密码,这样他们可以作为samba用户使用但是不能够登陆系统

[root@localhost 桌面]# useradd lily        #创建账户lily和john

[root@localhost 桌面]# useradd john

[root@localhost 桌面]# smbpasswd -a lily   #设置账户为samba用户并设置密码

[root@localhost 桌面]# smbpasswd –a john

3)新建共享目录并启动samba服务

[root@localhost 桌面]# mkdir /opt/test #创建test共享目录

[root@localhost 桌面]# chmod 777 /opt/test  #修改权限为777 

[root@localhost 桌面]# service smb start  #启 动samba服务

4)测试之前,必须把防火墙和selinux关掉

[root@localhost 桌面]# service iptables stop #关掉防火墙

[root@localhost 桌面]# setenforce 0  #关掉selinux服务

5). 效果验证:

1) 在【开始】菜单的运行框中输入\\192.168.X.1\test,跳出对话框,输入lily的账号和密码

2) lily这个用户可以登陆并且对test共享目录可以进行读写操

3) 在共享目录test里面新建了一个名为lily.txt的文件,回到服务器通过命令ls –l /opt/test查看这个文件的权限,该文件的创建者和属组都是lily

4) 用另一用户john登陆到共享文件夹测试

注:测试之前先要在客户机上清除之前的连接否则会因为缓存而直接进入共享目录

 8.实现指定用户的访问,并为用户赋予不同的权限

1)为了测试访问的用户的不同权限,在[test]配置中加入以下两行

valid users =lily, john  #允许这两个用户可以访问

write list =john        #只允许john这个用户可以写入

2) 效果验证

a.重启samba服务

[root@localhost 桌面]# service smb restart   #重启samba服务

b. 客户机上net use * /d清除连接

c.以lily身份登陆访问共享文件夹,测试写入文件

我们发现,我们设置了只有john可以写入,为什么用lily登陆进去的时候还是可以写入文件呢?我们回到服务器上检查配置文件

所以要使配置生效就必须删除writable = yes这一行配置

[root@localhost 桌面]# service smb restart   #重启samba服务

d. 清除连接(net use * /d),还是以lily的身份登陆,发现创建文件的时候被拒绝

e. 退出lily,清除连接,再用john登陆,john写入文件和文件夹成功,验证权限成功。

9. 实现对特定的访问地址进行限制

若要拒绝谁访问,只需要在主配置文件的[test]中添加一行:hosts deny = 192.168.X.  #192.168.X.表示192.168.X.0这个网段,让这个网段的所以主机都不可以访问

1)效果验证

[root@localhost 桌面]# service smb restart  #重启服务

2)客户机XP系统清除连接(net use * /d)

这次使用john这个账号来访问,可以访问其他共享文件夹但是因为客户机ip地址为192.168.X.2,其IP是192.168.X.0这个网段,在test共享文件夹拒绝访问的网段里面,所以当打开test文件夹时提示了拒绝访问

10.实验总结:

1) samba服务在Linux的系统中实现了微软的SMB/CIFS  网络协议,在部署windows、Linux混合平台的企业环境时,能够很好的解决不同系统之间的文件互访问题,使文件共享变得更加容易,是非常强大的功能。

2) samba服务提供了几种很实用的访问共享权限,也提供了服务器客户端的访问控制,在修改配置文件时一定要注意各个权限的配置是否冲突或者遗漏,平时可多做权限方面的测试。

SAMBA服务器的安装和配置实践的更多相关文章

  1. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

  2. CentOS 6.3下Samba服务器的安装与配置(转)

    CentOS 6.3下Samba服务器的安装与配置   一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写, ...

  3. CentOS 7下Samba服务器的安装与配置

    文基于<CentOS 6.3下Samba服务器的安装与配置>,参照原博文,自己在CentOS7环境上实现,并按照自己的环境修改博文内容 一.简介 Samba是一个能让Linux系统应用Mi ...

  4. CentOS6.4下Samba服务器的安装与配置

    一.先恶狠狠地吐槽一下: 这篇随笔真是让我折腾了2天2夜才敢下笔写!!!为什么呢?之前是通过去Samba的官网下载的源码包,也就是.tar.gz来进行安装配置,不过这个让我折腾来折腾去就是没折腾出结果 ...

  5. CentOS 6.3下Samba服务器的安装与配置【转载】

    本文转载自 园友David_Tang的博客,如有侵权请联系本人及时删除,原文地址: http://www.cnblogs.com/mchina/archive/2012/12/18/2816717.h ...

  6. Win7 环境下虚拟机内 Samba 服务器的安装、配置以及与主机的通信实现

    考虑到window和linux虚拟机之间互传文件较为麻烦,遂打算在虚拟机中安装Samba服务器,以此实现共享文件给window使用.然而安装配置过程曲折,遂作记录如下: 一.samba服务器的安装 正 ...

  7. CentOS 6.3下Samba服务器的安装与配置

    一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的 ...

  8. redhat enterprixe 5.0 samba 服务器 rpm 安装及配置

    Samba是著名的开源软件项目,在Linux/UNIX系统中实现了SMB/CIFS网络协议,因此使得跨平台的文件共享变得容易.在部署Windows.Linux/UNIX混合平台的企业环境时,使用Sam ...

  9. [转]CentOS 6.3下Samba服务器的安装与配置

    一.简介 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的 ...

随机推荐

  1. 查看系统进程:ps

    ps命令用于查看系统进程,常见用法如下: [root@localhost ~]$ ps aux # 查看所有的进程 [root@localhost ~]$ ps aux | grep nginx # ...

  2. 安装配置博客WordPress

    1.下载并解压WordPress cd /usr/local/src wget https://cn.wordpress.org/wordpress-4.4.2-zh_CN.tar.gztar zcv ...

  3. ThreadUtil 多线程处理List,回调处理具体的任务

    每次想多线程处理一个大的结果集的时候 都需要写一大堆代码,自己写了个工具类 方便使用 package com.guige.fss.common.util; import com.guige.fss.c ...

  4. Android Log.isLoggable方法异常:exceeds limit of 23 characters

    AndroidRuntime: java.lang.IllegalArgumentException: Log tag "AccountSetupIncomingFragment" ...

  5. Android N 7 【 classes.dex】反编译失败:com.googlecode.d2j.DexException: not support version.

    Microsoft Windows [版本 6.1.7601]版权所有 (c) 2009 Microsoft Corporation.保留所有权利. D:\Android反编译工具[全]\2016\d ...

  6. Android 系统镜像: boot.img kernel.img ramdisk.img system.img userdata.img cache.img recovery.img

    boot.img(kernel.img+ramdisk.img) ramdisk.img(/) system.img(/system) userdata.img(/data) cache.img(/c ...

  7. 在android真机上使用sqlite3

    #zijun#2013.10.29#QQ:223663737 在android真机上使用sqlite3 前期准备: 1:保证手机已经ROOT 操作步骤: 1 : 打开CMD 2 : 进入android ...

  8. Ubuntu16.04安装Nessus和MSF

    一.Nessus篇: 1.参考文献:https://www.cnblogs.com/shamojituan/p/6511208.html 2.下载地址:https://downloads.nessus ...

  9. navigater导航

    1.css的hover事件2.url事件(或者click事件),激活当前项3.第一导航与第二导航的移入移出事件(可以通过left,top值来显示,也可以变化宽度,高宽来显示)4.有二级导航的另外给cl ...

  10. 几何+点与线段的位置关系+二分(POJ2318)

    TOYS Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 10666   Accepted: 5128 Description ...