当前位置: 首页 > news >正文

搭建文件共享服务器samba————附带详细步骤

文章目录

  • 1 samba简介
  • 2 samba安装
  • 3 关闭防火墙和selinux
  • 3 修改配置文件
  • 4 配置samba登录用户密码
  • 5 启动服务
  • 6. windows访问共享文件
  • 7 samba的相关指令
  • 参考

1 samba简介

samba的功能都是通过一个CIFS(Common Internet File System)协议套件来管理的,这个名字是由微软引入的。

Samba是一个开源的CIFS实现,官网地址。

SMB (Server Message Block Protocol)协议是一种客户端/服务器通信协议,它主要包括smbd 和 nmbd,提供四种基本服务:

1,文件、打印服务:由SMB守护进程smbd提供
2,验证和授权:“共享模式”和“用户模式”
3,域解析:模拟Windows NT域系统,主要包括广播和点对点两种形式,还有一种是使用NBNS (NetBIOS Name Service)服务器,微软称为WINS服务(Windows Internet Name Service)
4,服务声明(浏览):声明网络上计算机提供的可浏览服务(文件和打印共享)列表。
前两个服务由smbd实现,后两个由nmbd来实现。

Samba 是 SMB/CIFS(Server Message Block / Common Internet File System)网络协议的重新实现,可以在局域网不同计算机之间进行文件、打印机等资源共享,和 NFS 功能类似。

SMB 最早是微软为自己需求设计的专用协议,用来实现微软主机之间的文件共享与打印共享,并不支持在 Linux 上运行。著名黑客、技术大牛 Andrew Tridgell 通过逆向工程,在 Linux 上实现的 SMB / CIFS 兼容协议,命名为 Samba,通过该程序实现了 Windows 和 Linux 之间的文件共享。

SMB 协议是 C/S 类型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”,Samba 不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。

SMB 的优点之一是兼容性好,在各平台获得了广泛支持,包括 Windows、Linux、macOS 等各系统挂载访问都很方便。另外 SMB 也是各种电视、电视盒子默认支持的协议,可以通过 SMB 远程播放电影、音乐和图片。

另外 SMB 提供端到端加密、安全性高,配置选项丰富,支持 ACL 并支持多种用户认证模式。

SMB 的缺点是传输效率稍低,速度不太稳定,会有波动。

2 samba安装

sudo apt update
sudo apt install samba
sudo apt install samba-client

smbclient是一个smb服务器的客户端管理程序。

whereis sambasmbd --version

3 关闭防火墙和selinux

配置之前先关闭linux防火墙

查看防⽕火墙状态:systemctl status firewalld
systemctl status firewalld.service停⽌止firewall:systemctl stop firewalld.service禁止firewall开机启动:systemctl disable firewalld.service 

关闭selinux

vi /etc/selinux/config注释SELINUX=enforcing,添加SELINUX=disabled

3 修改配置文件

1,先创建一个共享目录或者使用已有的目录;

$ mkdir -p /var/samba/share
$ touch /home/samba/share/test.txt

2,配置文件夹读写权限;

chmod -R 777 /home/samba

3,配置smb.conf文件:vi /etc/samba/smb.conf

添加的共享名为myshare,这个名称是windows访问时会显示的名称,可以随意设置;

[global]workgroup = WORKGROUPsecurity = userpassdb backend = tdbsamprinting = cupsprintcap name = cupsload printers = yescups options = raw[homes]comment = Home Directoriesvalid users = %S, %D%w%Sbrowseable = Noread only = Noinherit acls = Yes[printers]comment = All Printerspath = /var/tmpprintable = Yescreate mask = 0600browseable = No[print$]comment = Printer Driverspath = /var/lib/samba/driverswrite list = @printadmin rootforce group = @printadmincreate mask = 0664directory mask = 0775[myshare]comment = my server share dirpath = /home/samba/share/resourcepublic = yeswritable = yesbrowseable = yesguest ok = yesguest only = yesread only = no		

4 配置samba登录用户密码

可以使用groupadd 和 useradd命令添加用户组,下面我直接使用root用户(已存在的用户):

$ smbpasswd -a root
New SMB password:
Retype new SMB password:
Added user root.

5 启动服务

配置文件设置完成后启动samba服务,并设置开机启动

1,启动 smb.service 和 nmb.service两个服务

systemctl start smb.service
systemctl start nmb.service

2,设置开机启动

systemctl enable smb.service
systemctl enable smb.service

3,重启smb服务命令:

systemctl restart smb.servicesystemctl restart smbd

6. windows访问共享文件

win + r 输入samba服务器地址,访问samba共享文件

img

也可以在文件浏览器中输入地址 \\192.168.30.9 访问共享文件。

输入用户名密码后就可以访问Linux共享文件了!

img

7 samba的相关指令

smbpasswd命令属于samba套件,用户添加及删除samba用户和为用户修改密码。

添加samba用户sarah:[root@linuxcool ~]# smbpasswd -a sarah修改samba用户sarah:[root@linuxcool ~]# smbpasswd -i sarah将sarah用户的密码置空:[root@linuxcool ~]# smbpasswd -n sarah激活用户user1:[root@linuxcool ~]# smbpasswd -e user1禁用用户user2:[root@linuxcool ~]# smbpasswd -d user2删除用户user2:[root@linuxcool ~]# smbpasswd -x user2更改密码:
smbpasswd 用户名

在这里插入图片描述

参考

Linux smbpasswd命令教程:管理samba用户密码的利器

使用samba实现linux和windows文件共享

Debian 9 (Stretch) 上的 Samba 独立服务器安装

debian11 配置samba服务 linuxsys

http://www.dtcms.com/a/307334.html

相关文章:

  • SpringBoot+SpringAI打造智能对话机器人
  • 力扣46:全排列
  • k8s-master03加入集群失败解决方法之一
  • Table-Render:基于 JSON Schema 的高性能 React 动态表格渲染器
  • 【达梦MPP(不带主备)集群搭建】
  • 【Linux我做主】进程优先级
  • Linux的库制作与原理
  • e签宝CEO金宏洲受邀出席WAIC世界人工智能大会
  • 对比学习:原理演进、技术突破与跨领域应用全景
  • 【Java23种设计模式】:模板方法模式
  • Java设计模式之《命令模式》
  • SQL理解——INNER JOIN
  • 机器人行业工商注册企业基本信息数据(1958-2023年)
  • MySQL转PostgreSQL迁移实战:从语法错误到完美兼容
  • AWS云安全审计终极实战指南:构建自动化安全防线
  • Golang 调试技巧:在 Goland 中查看 Beego 控制器接收的前端字段参数
  • Sort Merge Join为什么是Spark中最优的join
  • C语言指针(三):数组传参本质、冒泡排序与二级指针详解
  • C++异常处理的成本:理解与优化
  • 超宽带测距+测角+无线通信一体化模组:智能门锁、智能遥控器、AR头戴、智能穿戴
  • yolo目标检测基础知识
  • AWS高级解决方案架构师黄海波:GenAI 时代非结构化数据处理的实践与趋势洞察
  • 【最近公共祖先】ST表法
  • 从渠道渗透到圈层渗透:开源链动2+1模式、AI智能名片与S2B2C商城小程序的协同创新路径研究
  • 联通元景万悟 开源,抢先体验!!!
  • 技术速递|GitHub Copilot for Eclipse 迈出重要一步
  • SpringAI:AI工程应用框架新选择
  • 转码刷 LeetCode 笔记[1]:3.无重复字符的最长子串(python)
  • 一对一交友小程序 / APP 系统架构分析
  • n8n为什么建议在数组的每个item中添加json键?