系统城装机大师 - 固镇县祥瑞电脑科技销售部宣传站!

当前位置:首页 > server > anz > 详细页面

Samba服务器配置,掌握Linux和Windows客户端共享Samba服务器资源的方法

时间:2020-03-14来源:电脑系统城作者:电脑系统城

实验目的:

    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)%20rpm%20-qa%20|grep%20samba%20//安装完后查看软件安装情况%20出现如下即为配置成功:

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

  1. 配置smb.conf文件

global]%20;全局配置

workgroup%20=%20WORKGROUP%20;%20工作组名称

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

netbios%20name%20=%20Host1%20;netbios名称

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

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

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

max%20log%20size%20=%20500%20;最大日志文件大小

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

map%20to%20guest%20=%20Bad%20User%20;匿名共享

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

comment%20=%20Template%20Directories%20;目录说明

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

writable%20=%20yes%20;是否可写

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

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

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

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

 

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

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

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

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

  1. 在windos中访问共享

 

任务3:使用用户名访问(需要密码的分享),每用户可以登陆访问(可读写)共享目录project,但Samba服务器上自己的主目录,只能用户自己访问(可读写),其他用户无权访问。  1、Samba服务器上创建共享目录/home/project%20并设置相应权限

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

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

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

4、修改用户密码

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

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

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

8、可以使用%20pdbedit%20-x%20用户名%20//删除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 网络或者不是主机生成的连接的一部分,那么它不会被接受。

分享到:

相关信息

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载