debian11安装samba(smb)协议的网络共享

简介

SMB(Server Message Block)通信协议是微软和英特尔在1987年制定的协议,主要是作为Microsoft网络的通讯协议,它是当今世上网络文件系统协议两极之一的存在

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

为什么选择samba协议

相对于NFSFTPSMBWebDavDLNA协议,SMB协议兼容性最好,支持范围广,安卓/win/mac/linux,包括各个厂商的电视、盒子等都有原生支持, 挂载到系统上方便,几乎无感的访问文件。

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

安装

惯例先更新下系统

apt update 
apt upgrade
apt autoremove
bash

1. 安装samba

apt install samba
bash
  1. 默认服务名称是nmbd, 重启示例:systemctl restart nmbd
  2. 默认配置文件是: /etc/samba/smb.conf

2. 添加samba用户

samba 使用 Linux 的用户和权限系统,但是有自己的认证机制。

samba 用户首先要是一个 Linux 用户,不然是创建不成功的。

2.1 创建一个 Linux 用户

useradd -s /bin/bash -m samba
bash

-m: 是在 home 目录自动创建一个 samba 目录
-M: 不在 home 目录自动创建用户的 samba 目录。
-s: 指定用户登入后所使用的shell

2.2 创建一个 smb 用户

smbpasswd -a samba
bash

手动输入两遍密码即可,其他参数可以通过 smbpasswd -h 查看

-a: 新增用户

3. 配置smb.conf

/etc/samba/smb.conf配置文件的最后添加如下内容

[shared]
  # 共享文件目录描述
  comment = Shared Dirs
  # 共享文件目录
  path = /mnt/sdb1
  # 设置共享是否允许guest账户访问
  public = no
  # 设置共享的管理员,如果 security =share 时,引项无效,多用户中间使用逗号隔开,例如admin users = samba,user1,user2
  admin users = samba
  # 设置共享是否可浏览,如果no就表示隐藏,需要通过IP+共享名称进行访问
  browseable = yes
  # 设置共享是否具有可写权限
  writeable = yes
  # 创建的文件权限为666
  create mask = 0666
  # 创建的目录权限为666
  directory mask = 0666
  # 设置共享是否具有只读权限
  # read only  =  yes/no                   
  # 设置允许访问共享的用户,例如valid users = user1,user2,@group1,@group2(多用户或组使用逗号隔开,@group表示group用户组)
  # valid users  =  username
  # 设置不允许访问共享的用户
  # invalid users  =  username
  # 设置在共享具有写入权限的用户,例如例如write list  = user1,user2,@group1,@group2(多用户或组使用逗号隔开,@group表示group用户组)
  # write list  =  username
bash

4. 重启

systemctl restart nmbd
bash

访问

window: \\<ip>\shared
华为手机:文件管理 -> 浏览 -> 网上邻居 -> 添加设备

备注

1、 global节点security参数说明

[global]
  #设置用户访问samba服务器的验证方式 ,一共四种验证方式。
  # 1. share:用户访问Samba Server不需要提供用户名和口令, 安全性能较低。
  # 2. user:Samba Server共享目录只能被授权的用户访问,由Samba Server负责检查账号和密码的正确性。账号和密码要在本Samba Server中建立。
  # 3. server:依靠其他Windows NT/2000或Samba Server来验证用户的账号和密码,是一种代理验证。此种安全模式下,系统管理员可以把所有的Windows用户和口令集中到一个NT系统上,使用Windows NT进行Samba认证, 远程服务器可以自动认证全部用户和口令,如果认证失败,Samba将使用用户级安全模式作为替代的方式。
  # 4. domain:域安全级别,使用主域控制器(PDC)来完成认证。
  security = share                  
bash

2、 权限数字说明

  • r -> 4: 可读
  • w -> 2: 可写
  • x -> 1: 可执行
  • 0: 无权限

0666: 表示 [文件类型][所有者][组成员][其他用户]的权限都是可读写


来源: debian11安装samba(smb)协议的网络共享
作者: Ababa
文章链接: https://itlangzi.com/s/JhnoN4.html
本文章著作权归作者所有, 任何形式的转载都请注明出处

posted @ 2023-02-16 16:08  木子欢儿  阅读(2859)  评论(0编辑  收藏  举报