配置与管理samba服务器(Linux)

2023-05-16

实验目的

1.了解samba服务器的功能

2.掌握samba服务器的配置管理

3.掌握samba 客户端程序的使用

4.掌握Windows主机和Linux主机共享文件互访的方法

准备工作

1、物理机(windows客户端):samba_windows_client

(1)启用VMnat8网卡

(2)按拓扑图设置IP为192.168.37.20

2、Linux客户端:samba_linux_client

(1)克隆1台虚拟机,命名为cos7

(2)设置服务器的主机名为samba_linux_client

#hostnamectl set-hostname samba_linux_client

(3)设置网络

①关机init 0

②先删除原来的网卡,然后添加新的网卡

③开机

④按拓扑图,设置网卡方式为NAT模式,设置IP为192.168.37.10

(4)测试,可以ping通物理机

3、服务器:samba

(1)设置服务器的主机名为samba

(2)按拓扑图,设置网卡方式为NAT模式,设置IP为192.168.37.60

(3)可以ping通物理机

任务1 安装samba服务

使用命令#yum install -y samba安装samba服务

任务2 配置samba服务

samba配置文件路径:/etc/samba/smb.conf

1、先备份配置文件

#cd /etc/samba/

#cp smb.conf smb.conf.bak

2、打开配置文件

#vi smb.conf

在配置文件的最后增加共享信息[share]

[share]

path = /share #共享文件的路径

browseable = yes #是否网上邻居可见

writable =yes #共享文件是否可写

3、创建共享目录,并赋予权限

4、启动samba服务

5、查看的端口启动情况

使用命令# netstat -ntpl 查看smbd服务端口是否已经开启

6、创建samba用户

#smbpasswd -a root //注意,这个用户必须是系统存在的用户

任务3 使用samba服务

1、在客户端连接samba服务器前,需确保samba服务器的SELinux和防火墙服务均处于关闭状态

(1)关闭SELinux

①临时禁用

使用命令#setenforce Permissive

②永久禁用

编辑配置文件#vi /etc/sysconfig/selinux

然后将配置SELinux=enforcing改为SELinux=disabled

重启计算机就生效了

③查看SElinux的状态

# sestatus

(2)关闭防火墙

①添加samba服务

#firewall-cmd --add-service=samba --permanent

(--permanent永久生效,没有此参数重启后失效)

②重新加载防火墙

#firewall-cmd --reload

③查看samba是否已被防火墙放行

# firewall-cmd --list-all

(3)重新加载samba服务

#systemctl restart smb

如果你启动smb服务有问题,如下:

请打开配置文件/etc/samba/smb.conf,注释掉security = share,然后再重启smb服务就会成功了

2、在客户端访问samba服务器上的共享文件

(1)在物理机上,右键桌面左下角的开始图标,单击【运行】,输入samba服务器的IP地址

(2)输入samba用户名和密码,点击【确定】登录,就可以看到共享文件夹

复制一些yum源文件到共享文件夹下,试试看是否可以下载到本地。

清理samba缓存 net use * /del /y

任务4 设置访问权限

1、设置访问用户

valid users = 用户名

valid users = @组名

2、设置过滤主机

hosts allow = 192.168.37. server.abc.com

hosts allow = 192.168.40.

3、设置只读

read only = yes

4、设置可读可写

writable = yes

5、指定可写用户

write list = @组名,用户名

案例:

服务器:Centos 7.4 192.168.37.60

客户端:Win10 192.168.37.20

公司架构:

samba服务器管理员:ada

总经理:mike

产品部:lucy lily

技术部:lilei hanmeimei

共享设置

共享名

共享目录

用户和权限

zongjingli

/dianxin/zongjingli

mike(rw) ada(rw)

chanpinbu

/dianxin/chanpinbu

@chanpinbu(rw) mike(r) ada(rw)

jishubu

/dianxin/jishubu

@jishubu(rw) mike(r) ada(rw)

步骤分析

1、准备工作

(1)创建组

(2)创建用户

(3)把用户加入对应的组

(4)创建共享目录

(5)赋予全部权限

2、安装samba软件

3、修改samba配置文件

4、启动服务

5、关闭selinux、关闭防火墙

7、添加授权用户

8、测试

(1)用总经理账户mike登录,新建1个文件为mike.txt,分别将它上传到zongjingli,chanpinbu和jishubu这3个共享文件夹

结果:可以上传到zongjingli

不可以上传到chanpinbu和jishubu

(2)用同样对的方法测试lucy和lilei

注意,在每次测试前都要先清除登录信息

清除方法:在客户端(物理机)打开cmd窗口,输入 net use * /del /y

任务5 通过linux客户端使用samba服务

1、安装linux客户端软件

#yum install -y samba-client

#yum install -y cifs-utils

2、访问共享目录

在客户端上输入以下命令

(1)列出服务器上的共享资源

#smbclient -L 服务器的IP

(2)使用 mike账户访问/zongjingli文件夹

#smbclient //192.168.37.60/zongjingli -U mike

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

配置与管理samba服务器(Linux) 的相关文章

  • Linux 中 NDIS 过滤器的类似物是什么?

    我正在研究一个as close to real time我在linux中尽可能地使用系统 并且需要在收到特定数据包后立即发送大约600 800字节的TCP数据包 为了获得最佳的延迟 我希望这个数据包直接从内核发送 而不是将接收到的数据包一直
  • Bash 脚本 Mysql 警告:在命令行界面上使用密码可能不安全

    你好 我有一个脚本来对一些 mysql 数据库进行分区 我们正在从 5 5 升级到 5 6 在测试脚本时 我注意到新的 5 6 版本 mysql 返回Warning Using a password on the command line
  • 在 Kali (Debian) 中安装 mono-devel 时,软件包具有未满足的依赖关系

    我尝试安装 mono devel 并输入sudo apt get mono devel在终端中 但失败了 得到以下结果 apt get install mono devel Reading package lists Done Buildi
  • Linux 上的最大子进程数

    下面的代码将产生尽可能多的子级 自己不会进一步fork 一旦父进程退出就会变成僵尸 父进程将产生多少个子进程 int main int argc char arg while fork gt 0 子进程的数量可以通过以下方式限制设置限制 2
  • 如何在 Linux 中检测通过 GUI 登录的用户

    我想在我的程序中捕获通过 GUI 登录的用户名 我的程序作为守护进程从 root 登录运行 如果非 root 用户通过 GUI 登录 我的程序应该会收到通知 我正在粘贴我当前的程序 该程序调用一个 perl 脚本 利用系统调用来检查当前登录
  • 哪个信号被传递到信号处理程序中死锁的进程

    我有一个来自调用信号处理程序后死锁的进程的核心转储 如何确定传送了哪个信号以及是谁发送的 GDB 为接收信号的线程生成的回溯如下 信号处理程序在第 15 帧中被调用 gdb bt 0 0x00007fa9c204654b in sys fu
  • 编译错误:linux/module.h:没有这样的文件或目录

    我写了一个简单的模块 define KERNEL define MODULE include
  • 通过 C 将线程固定到 cpuset 中的核心

    我有 cgroup cpuset set1 set1有2 5 8 我想将一个进程绑定到该 cpuset 然后将该进程中的一个线程固定到核心 4 cpuset 的名称 线程名称以及我应该将线程绑定到的核心位于 m 配置文件中 是否有任何 C
  • 您可以bind()和connect() UDP连接的两端吗

    我正在编写一个点对点消息队列系统 它必须能够通过 UDP 运行 我可以任意选择一侧或另一侧作为 服务器 但这似乎不太正确 因为两端都从另一端发送和接收相同类型的数据 是否可以绑定 和连接 两端 以便它们只能彼此发送 接收 这似乎是一种非常对
  • 使用 cmake 和 opencv 对符号“gzclose”的未定义引用[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我尝试构建该项目 doppia https bitbucket org rodrigob doppia 但发生链接错误 我想这是一
  • 即使退出命令后,Shell 脚本仍继续运行

    我的shell脚本如下所示 bin bash Make sure only root can run our script EUID ne 0 echo This script must be run as root 1 gt 2 exit
  • 由于参数中有空格,Bash 脚本因未知选项而失败

    我正在尝试运行 aws create lambda 函数 事情的经过如下 eval aws lambda create function function name FUNCTION NAME runtime RUNTIME role RO
  • 健全性检查 SSH 公钥? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我已要求用户提供他们的公共 id rsa pub ssh 密钥 然后将其放入 home theiraccount ssh authorized key
  • 使用 AWK 或 SED 以及以下标签以逗号分隔

    使用 AWK 或 SED 以及下面使用的标签以逗号分隔 BEGIN AccountID BEGIN CallerID BEGIN Billed Account Attributes 1111111 1111111 1111111 END B
  • POSIX:FreeBSD 与 Linux 中的管道系统调用

    在 Linux 2 6 35 22 generic 中 man pipe指出 pipeline 创建一个管道 一个可用于进程间通信的单向数据通道 在 FreeBSD 6 3 RELEASE p5 中 man pipe指出 pipeline
  • 将尾部输出重定向到程序中

    我想使用 tail 作为标准输入向程序发送文本文件中的最新行 首先 我向程序回显一些每次都相同的输入 然后从输入文件发送尾部输入 该输入文件应首先通过 sed 处理 以下是我期望工作的命令行 但是当程序运行时 它只接收回显输入 而不接收尾部
  • Linux 缓冲区溢出环境变量

    我一直在审查不同类型的缓冲区溢出 并遇到了一个我不记得为什么会发生的问题 下面的代码是我尝试执行缓冲区溢出的程序 include
  • Kubernetes Pod 已终止 - 退出代码 137

    我需要一些关于 k8s 1 14 和在其上运行 gitlab 管道所面临的问题的建议 许多作业都会抛出退出代码 137 错误 我发现这意味着容器突然终止 集群信息 库伯内特版本 1 14 使用的云 AWS EKS 节点 C5 4xLarge
  • 从命令输出中设置 GDB 中的环境变量

    我试图在挑战中利用缓冲区溢出 缓冲区从环境变量中获取其值 在 GDB 中 我知道您可以使用以下命令设置环境变量 set environment username test 但是我需要传递用户名变量特殊字符 所以我需要执行以下操作 set e
  • 如何获取uinput创建的设备的名称(路径)

    我已经成功设置了一个小程序来创建uinput questions tagged uinput我计划使用它来自动测试接收键盘输入事件的应用程序 我已关注both http thiemonge org getting started with

随机推荐

  • 获取dom页面文档对象的5种方法~js篇

    1 通过ID获取 xff1a document getElementById ID名 注意点 xff1a 因为我们文档页面从上往下加载 xff0c 所以先得有标签所以我们script写到标签的下面get 获得element 元素by 通过驼
  • 节点操作~JS

    2 节点操作 A 动态创建节点的三种方法 xff1a 1 document write 注意 xff1a 页面文档流加载完毕 xff0c 再调用就会导致页面重绘 2 element innerHTML将内容写入某个dom节点 xff0c 不
  • 删除数组元素方法

    1 length JavaScript中Array的length属性非常有特点一一它不是只读的 因此 xff0c 通过设置这个属性可以从数组的末尾移除项或添加新项 var colors 61 34 red 34 34 blue 34 34
  • ubuntu中ifconfig命令无效

    许多windows非常熟悉ipconfig命令行工具 xff0c 它被用来获取网络接口配置信息并对此进行修改 Linux系统拥有一个类似的工具 xff0c 也就是ifconfig interfaces config 通常需要以root身份登
  • JS中~定时器

    一 window对象常见事件 window onload是窗口 页面 xff09 加载事件 当文档内容完全加载完成会触发该事件 包括图像 脚本文件 CSS文件等 就调用的处理函数 注意 1 有了window onload就可以把JS代码写到
  • ubuntu磁盘信息查看命令

    1 命令控制行切入U盘目录中 dev 设备驱动文件 media 此目录下放置可插拔设备 xff0c 比如SD卡 xff0c 或者U盘就是挂载到这个目录中 首先要切换到 dev目录中寻media寻用户找到相关U盘 如上便可切入相应U盘 2 根
  • 【SLAM-建图】Ubuntu18.04安装cartographer记录

    1 更新和安装相关工具 sudo apt span class token operator span get update sudo apt span class token operator span get install span
  • jQuery获取标签属性值(一)

    1 box shadow属性可以设置盒子阴影的效果其参数为 xff1a box shadow h shadow v shadow blur spread color inset h shadow必需的 水平阴影的位置 允许负值v shado
  • 尚硅谷react课程-day04

    目录 1 回调形式的ref 2 回调ref中调用次数问题 3 受控组件 4 非受控组件 1 回调形式的ref 1 利用react提供的ref属性名通过回调函数的属性值去调用节点自身 currentnode 61 gt this input1
  • 尚硅谷react课程-day05

    目录 1 高阶函数 2 组件的生命周期 onChange 61 this saveFormData 39 username 39 这个代码的意思是把saveFormData函数调用后的返回值交给onChange回调 xff0c 不是把sav
  • 快捷式~node.js环境搭建

    1 安装包官网下载 xff1a Node js nodejs org 2 安装完成后修改环境变量 在上面已经完成了 node js 的安装 xff0c 即使不进行此步骤的环境变量配置也不影响node js的使用 但是 xff0c 若不进行环
  • 51单片机LCD1602液晶屏显示方法

    以显示hello world 2022 10 17 为例 首先把LCD1602的模块化程序添加到项目目录中 xff0c 模块化方法在51单片机之程序模块化 学习笔记吧的博客 CSDN博客这里可以学习 实验程序 xff1a include l
  • 深度剖析C语言符号篇

    致前行的人 xff1a 人生像攀登一座山 xff0c 而找寻出路 xff0c 却是一种学习的过程 xff0c 我们应当在这过程中 xff0c 学习稳定冷静 xff0c 学习如何从慌乱中找到生机 目录 1 注释符号 xff1a 2 续接符和转
  • HTML5(入门)

    目录 一 HTML5概念和基本的结构 二 基本标签学习 三 图像标签 四 连接标签 五 列表标签 六 表格标签 table 七 媒体标签 八 网页结构 九 内联框架 iframe 十 表单标签 form 十一 初级验证 一 HTML5概念和
  • Arduino驱动oled

    1 模块介绍 I2C显示屏 xff08 驱动为ssd1306 xff0c 分辨率为128 64 xff09 Arduino nano xff08 Atmega168p xff09 2 模块连接 参考开发板管教定义图可知SCL SDA应该连接
  • 4.3.2、分类编址的 IPv4 地址

    分类编址的 IPv4 地址分为 A B C D E 五类 A 类地址的网络号部分占 8 8 8 比特 xff0c 主机号部分占 24 24 24
  • 解决idea2020版本无法使用actiBPM插件问题

    下载 由于在idea自带的插件商店中搜索不到此插件 xff0c 所以我们需要去官网下载 xff1a 地址 xff1a JetBrains Marketplace 点击下载 xff1a 安装 下载完成之后 xff0c 打开idea的设置 xf
  • 【Ubuntu小工具安装】

    span class token number 1 span 安装谷歌中文拼音输入法 span class token number 2 span 双显示器屏幕设置 和独立显卡显示设置 span class token number 3 s
  • 图像的底层特征、高层特征是什么,语义信息是什么意思

    底层特征指的是 xff1a 轮廓 边缘 颜色 纹理和形状特征 颜色特征 是一种全局特征 描述了图像或图像区域所对应的景物的表面性质 纹理特征 也是一种全局特征 它也描述了图像或图像区域所对应景物的表面性质 形状特征 有两类表示方法 一类是轮
  • 配置与管理samba服务器(Linux)

    实验目的 1 了解samba服务器的功能 2 掌握samba服务器的配置管理 3 掌握samba 客户端程序的使用 4 掌握Windows主机和Linux主机共享文件互访的方法 准备工作 1 物理机 xff08 windows客户端 xff