在 Ubuntu 中配置 Samba 实现「特定用户可写,其他用户只读」的共享目录

需求目标

  • 所有认证用户 可访问 Samba 共享目录 /path/to/home;
  • **仅特定用户(如 developer)**拥有写权限;
  • 其他用户仅允许读取;
  • 禁止匿名访问。

配置步骤

1. 设置文件系统权限

将目录 /home3/guest 的所有权设为 developer 用户和所属组,并设置权限:

bash 复制代码
sudo chown -R developer:developer /path/to/home
sudo chmod -R 755 /path/to/home
  • 755 权限:
    • 所有者(developer)可读写执行;
    • 其他用户仅可读和执行。

说明:此配置确保文件系统权限与 Samba 配置一致,避免权限冲突。


2. 配置 Samba 共享目录

编辑 Samba 配置文件(通常位于 /etc/samba/smb.conf),添加以下内容:

ini 复制代码
[public]
path = /path/to/home
public = no
browseable = yes
writable = no
write list = developer
create mask = 0644
directory mask = 0755
配置参数详解
参数 作用
path 共享目录的物理路径
public = no 禁止匿名访问
browseable = yes 允许用户浏览目录
writable = no 默认所有用户不可写
write list = developer 仅 developer 用户可写
create mask = 0644 新建文件的权限(所有者可读写,其他用户只读)
directory mask = 0755 新建目录的权限(所有者可读写执行,其他用户只读执行)

3. 重启 Samba 服务

应用配置更改:

bash 复制代码
sudo systemctl restart smbd

关键原理说明

1. Samba 的默认行为

  • 未设置 valid users:Samba 默认允许所有认证用户访问共享目录;
  • writable = no + write list :通过白名单控制写权限,避免手动维护 valid users 列表。

2. 权限优先级

  • Samba 配置 > 文件系统权限 :即使文件系统允许组写入(如 755),Samba 的 writable = no 和 write list 会覆盖这一限制,确保仅白名单用户可写。

3. 安全性设计

  • 禁止匿名访问 :通过 public = no 和全局默认配置 map to guest = Bad User 实现;
  • 最小权限原则:默认只读,通过白名单授予写权限。

注意事项

1. 配置一致性

  • 确保文件系统权限与 Samba 配置一致,避免权限冲突。
  • 若发现权限异常,检查 Samba 日志:/var/log/samba/smbd.log。

2. 扩展场景

  • 限制特定用户组访问 :
    添加 valid users = @group_name 限制仅某组用户可访问;
  • 更细粒度控制 :
    使用 ACL(setfacl)实现更复杂的权限管理。

总结

通过上述配置,你可以实现:

  • 所有认证用户可读共享目录;
  • 仅特定用户(如 developer) 可写;
  • 无需频繁维护用户列表,适应用户频繁变动的场景;
  • 安全可控,避免匿名访问和权限泄露风险。

此方案适用于开发团队协作、自动化构建目录等场景,确保数据安全的同时提升协作效率。

相关推荐
Patrick在香港39 分钟前
同一份脚本,mac 正常 Windows 乱码:open() 默认编码实测(附 3.15 终局)
utf-8·windows·python·macos·跨平台·编码·标准库
为思念酝酿的痛1 小时前
数据链路层--帧传输与链路控制
网络·网络协议·计算机网络·数据链路层
头发还在的女程序员1 小时前
【无标题】
网络·数据库·短剧小程序·短剧系统·海外短剧·短剧后台
是jin奥1 小时前
Ubuntu 访问 Windows 共享目录
linux·运维·ubuntu
Gauss松鼠会1 小时前
【GaussDB】破除gaussdb ugin索引支持中文模糊查询的迷思-字符序
java·运维·服务器·网络·数据库·gaussdb·经验总结
luiyarch1 小时前
汽车电子ISO 21448 SOTIF系列(第26期):未知危险场景的确认方法(下)——AI驱动的场景发现
网络·人工智能·安全·车载系统·汽车
砚凝霜2 小时前
【软考信息安全】第十六章 网络安全风险评估项目流程与应用
网络·安全·web安全
Mr_韩2 小时前
子网路由实战:无需公网 IP,异地直接访问家庭内网全部设备
运维·网络·物联网·nas
Bruce_Liuxiaowei2 小时前
内网“影子资产“:串口服务器安全盲区剖析
服务器·网络·安全·iot