实验二 Samba服务器配置

2020-03-14 16:02:13来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

实验二 Samba服务器配置

1、简单文字说明,关键位置截图补充,Samba配置文件中的关键参数,使用注释标明。 2、实验过程中,出现任何错误,详细描述排错的过程。 3、实验完成后,当场演示实验结果。

实验二

实 验 基 本 信 息

实验名称:Samba服务器配置

实验时间:    年 月 日

实验地点: 

实验目的:

    1. 了解Samba环境及协议
    2. 掌握Samba的工作原理
    3. 掌握主配置文件Samba.conf的主要配置
    4. 掌握Linux和Windows客户端共享Samba服务器资源的方法

实验要求

1、简单文字说明,关键位置截图补充,Samba配置文件中的关键参数,使用注释标明。

2、实验过程中,出现任何错误,详细描述排错的过程。

3、实验完成后,当场演示实验结果。

实验过程描述

任务1: 配置yum源,使用光盘镜像安装Samba服务包。

(1) 挂载光驱:虚拟机→可移动设备→勾选CD/DVD;虚拟机→设置,如下图所示,确保CentOS7放在“光驱”中。

?

2)连接xshell操作

如下所示:

?

(3) rpm -qa |grep samba //安装完后查看软件安装情况 出现如下即为配置成功:

?

任务2:匿名访问(不需要密码的分享),物理主机匿名访问Samba服务器上的共享目录/tmp和/public。

  1. 输入命令

?

  1. 配置smb.conf文件

?

global] ;全局配置

workgroup = WORKGROUP ; 工作组名称

server string = Samba Server Version %v ;主机简单说明

netbios name = Host1 ;netbios名称

interfaces = 192.168.40.0/24 ;允许哪个接口提供服务,监听哪些网卡

hosts allow = 127.空格192.168.8. ;允许哪些地址的主机访问

log file = /var/log/samba/log.%m ;日志文件位置

max log size = 500 ;最大日志文件大小

security = user ;Samba服务器的安全模式

map to guest = Bad User ;匿名共享

[tmp] ;共享目录名称,也叫节名,每节定义一个共享项目

comment = Template Directories ;目录说明

browseable = yes ;是否让所有的用户看到这个项目

writable = yes ;是否可写

path=/tmp ;共享文件夹路径

guest ok = yes ;单纯分享时,让用户随意登入的设定值

  1. 查看配置文件语法是否正确

?

  1. 启动服务器并查看端口是否打开

?

 ?

 • nmb:进行NetBIOS名称解析,主要使用UDP端口137、138来解析名称。

• smb:管理Samba服务器上的共享目录、打印机等,主要使用TCP端口、139、445来传输数据。

  1. 在服务器(本地)检查共享情况

?

  1. 关闭防火墙和selinux重启服务器

?

  1. 在windos中访问共享

?

?

?

 

任务3:使用用户名访问(需要密码的分享),每用户可以登陆访问(可读写)共享目录project,但Samba服务器上自己的主目录,只能用户自己访问(可读写),其他用户无权访问。

 1、Samba服务器上创建共享目录/home/project 并设置相应权限

?

注意:2是扩展属性,你的文件的权限变为-rwxrws---表示其他用户执行问件时具有所有者组的权限,若是4770则权限变为:-rwsrwx---,表示其他用户执行文件时,具有与所有者相当的权限

  1. 修改配置文件/etc/samba/smb.conf

?

?

3、创建共享用户,根据权限访问共享目录(说明:Samba使用Linux系统的本地用户账户,但需要为系统账户专门设置Samba密码。客户端访问时,系统将提交的用户信息与Samba服务器端的信息进行比对地,如果相符,并且也符合Samba服务器其他安全设置,客户端与Samba服务器才能成功建立连接。)

?

4、修改用户密码

?

5、创建和管理Samba的共享用户,设置密码为4321(可以使用pdbedit命令来创建和管理Samba用户。)

?

?

?

?

6、 查看结果 pdbedit -L //读取passdb.tdb数据库文件,列出所有共享用户

?

7、 可以使用smbpasswd命令,修改共享用户的密码

?

8、可以使用 pdbedit -x 用户名 //删除samba共享用户

9、重启服务

?

10、在本地查看结果

?

 

 。

 

回答问题

  1. Samba服务器有什么安全风险?

实验中为了搭建服务器关掉了防火墙和SElinux不利于系统安全

 防火墙

  Samba 有很多特性可以限制哪些人能访问哪些共享文件 — 限制特定用户名的访问、强制要求密码、检查组成员或在网络层过滤。后面的参数,比如 allow hosts 和 smb ports,它们对 IP 地址和 User Datagram Protocol (UDP)/TCP 端口进行操作,提供了一种简单的方法来控制哪些主机可连接到 Samba 服务器上。

  如果能识别哪些设备连接到服务器,比如属于内部网络,或者甚至是某个特定的子网或一组服务器,那么就实现了网络层控制。这是第一道防线:如果攻击者无法连接到设备,那么设备会更安全。

  在 Samba 守护进程中控制网络网络访问,这听上去是完美的解决方案,但其实有更好的方法。为了确定远程连接是否满足要求,Samba 首先要接受连接,因为 Samba 只有在完成连接后才能获取详细信息。如果是想要防止不符合要求的用户连接到 Samba,那么防止 Samba 看到这些连接更有意义。Samba 中的所有配置都只会影响 Samba,因此必须为其他的守护进程(比如 web 服务器和文件传输)找到类似的解决方案。

在典型环境中,网络安全不是由系统管理员而是由其他 IT 员工负责。在主机层(而不是应用程序层)控制访问能够实现业务分离,而且会减少由于更改 smb.conf 而导致的错误

使用防火墙保护 Samba

  有多种不同的方法来设计 Samba 的防火墙策略,选择时要考虑网络布局以及谁或哪些主机需要访问 Samba 服务器等事项。从较高的层面来看,您可以选择保护整个主机或只关注 Samba。

  如果您想要保护整个主机,那么您就不必担心 Samba 使用哪个端口。以下代码是一个简单策略,只允许来自 10.0.0.0/8 专用网络的流量传输到本地服务器:

iptables -A INPUT -s 10.0.0.0/8 -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -P INPUT DROP

  第一个命令向 INPUT 链添加了一条规则,它将规则添加到当前的规则列表中。该规则设置了来自源网络(-s)10.0.0.0/8 的所有内容都跳到 ACCEPT 目标,它将会接受数据包。第二个命令允许来自现有会话的包,这是通过调用带有 -m state 的状态匹配器实现的。匹配器会追踪哪些连接离开主机。传出的连接的响应包被认为是 established 或 related,因此规则的其余部分会接受这些包。

  最后一个命令设置 INPUT 链丢弃数据包的默认策略。如果数据包不是来自 10.0.0.0/8 网络或者不是主机生成的连接的一部分,那么它不会被接受。

实验成绩

 

 

 

教师签名:


原文链接:https://www.cnblogs.com/jiufang/p/12493579.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:#Linux学习# 文件搜索命令

下一篇:操作系统-进程同步与信号量