AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 885324
Accepted
Matthias Ronge
Matthias Ronge
Asked: 2017-11-28 05:19:53 +0800 CST2017-11-28 05:19:53 +0800 CST 2017-11-28 05:19:53 +0800 CST

sambaSID 计算的背景

  • 772

我正在贡献并运行一个开源 Web 应用程序,该应用程序在很大程度上在我之前就已经存在。该应用程序将 Web 应用程序用户的 LDAP 条目添加到本地 LDAP 实例,以使这些用户可以通过 Samba 访问文件系统。

在我知道的所有工作示例中,sambaSID存储在 LDAP 中的值都配置为由模式计算

$LOCALSID "-" ($UIDNUMBER * 2 + 1000)

示例:对于具有uid 1002的用户,sambaSID 将类似于S-1-5-21-1234567890-5678912345-987654321 - 3004[为可读性添加空格]。我很好奇为什么这是必要的。这些神奇的数字 2 和 1000 是从哪里来的,它们是否必要,如果是,为什么?

环顾四周,我发现了这个与我们的应用程序无关的PDF ,并准确地解释了这个过程:

5. 设置用户 sambaSID

在为外部 LDAP 创建用户时,您需要特别注意他们的 sambaSID。

用户的正确 Samba 条目类似于以下示例:

uid 号:1001

sambaSID:S-1-5-21-2896602268-470177729-4123194723-3002
gidNumber:1000

sambaPrimaryGroupSID:S-1-5-21-2896602268-470177729-4123194723-3001

如您所见,常规 sambaSID 后面附加了一个 4 位数字(取自上面的 WORKGROUP 示例)。这是通过以下方式生成的:

sambaSID: uidNumber * 2 + 1000
sambaPrimaryGroupSID: gidNumber * 2 + 1001

这些条目必须始终匹配并符合上述架构 - 否则用户将无法通过 SMB 进行连接。

因此,这些数字似乎不是随意选择的。但是,在我们的示例中,与引用的 PDF 不同,我发现sambaPrimaryGroupSID没有经过任何算法,它对 group 100( users) 的值只是附加了,like S-1-5-21-1234567890-5678912345-987654321 - 100,这与上面引用的 PDF 中的解释不同。但是,Samba 访问也可以正常工作,所以我想知道我找到的来源有多可靠。

那些神奇的数字“2”和“1000”是从哪里来的?它们对任何事情都是必要的或有用的吗?

samba
  • 1 1 个回答
  • 2122 Views

1 个回答

  • Voted
  1. Best Answer
    student91
    2019-07-30T12:05:50+08:002019-07-30T12:05:50+08:00

    我正在寻找同样的东西,并找到了这个链接。

    那里解释说,乘以 2 是为了确保用户安全 ID 和组安全 ID 不重叠。(后者总是很奇怪)。

    关于 +1000,低于 1000 的数字保留给特殊的 Windows 组,就像在 Linux 中保留了很多较小的组号一样。普通 Windows 用户会得到以 1000 开头的数字。

    • 1

相关问题

  • AD 组成员身份更改未反映在 winbind 信息中

  • 使用 smbldap 管理用户/组的 Web 前端

  • 修复 FreeBSD 上缺少的库

  • 连接到具有共享模式安全性的 Samba 服务器时出现问题

  • 3台计算机(Windows和Linux)的家庭网络[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve