【问题标题】:Samba authentication and linux user mappingSamba 身份验证和 linux 用户映射
【发布时间】:2014-06-15 14:25:45
【问题描述】:

我在 Raspberry Pi 上使用 samba 3。我想在 linux 和 Windows NT (Windows 8) 用户之间使用 1:1 映射。此时我有以下 samba 配置:

server role = standalone # not working! unkown parameter! (testparm -v)
local master = yes
os level = 33
client NTMLv2 auth = yes
guest ok = no
server string = %h server
wins support = yes
dns proxy  = no
# Auth
security = user
encrypt passwords = true
obey pam restrictions = yes
unix password sync = yes
auth methods = sam
domain logons = no
# winbind enum groups = yes
# winbind enum users = yes
## shares ##
[testdir]
path = /home/testdir
valid users = %U
browseable = yes
writeable = yes
create mode = 0600
directory mdoe = 0700
read only = no
[homes] # not working!
path = /home/%U # have tried with %S
valid users = %U
browseable = yes
available = yes
guest ok = no

但是主共享不起作用,我认为用户映射有问题,因为我无法访问主目录(找不到网络路径)并且 windows 没有说:Sebi (Unix User) , 但是 \smart-server\Sebi:

输出pdbedit -L

Ignoring unknown parameter "server role"
Sebi:1000:

Windows 共享属性(testdir(工作!))

我认为这是用户映射的问题,因为pdbedit -Lv 输出的是 SID 而不是 UID。有谁知道我如何将我的 samba 配置为在 unix 和 windows NT 用户之间以 1:1 的简单共享方式工作。我不知道我做错了什么。

【问题讨论】:

    标签: linux unix authentication samba network-share


    【解决方案1】:

    有两种方法可以在计算机之间进行 1:1 的帐户映射。首先是同步。这是您在机器之间手动或通过脚本复制帐户的地方。我认为这是您尝试执行的操作,但是尝试执行此操作时 Windows 无法正常工作。 (这种方法还有其他问题导致了第二种方法)

    第二种方式是目录服务器。那里有很多目录服务器。 Sun 推出了 NIS,有 DAP 和 LDAP,它们有多种实现,包括 SAP、Red Hat、Oracle 和 Novel 等人。但在 Windows 环境中,占主导地位的目录服务器是 Microsoft 的 Active Directory,它是 Windows 服务器的一部分。 (在 windows 2000 之前有一个更简单的服务,叫做 NT 域登录,在某些情况下仍然可以使用。)

    现在,如果您不想花大价钱购买 Windows 服务器,samba 有一个协议兼容的目录服务器。 samba 3 使用 NT 域登录来提供帐户信息,并且 samba 4 与活动目录兼容。使用 samba 3 向 windows 提供帐户的一般方法是使 samba 成为主域控制器,然后将 windows 加入到您刚刚创建的域中。然后从您的 passwd 文件(或 NSS 映射您的帐户信息的任何位置)中提取帐户,但您的密码必须存储在 samba 中。 Samba 4 是一个类似的过程,但更新的所有帐户信息都必须存储在 samba 中,并且您还必须使用 winbind 将您的 linux 机器(在您的情况下为 Raspberry PI)加入域。

    另一方面,如果您周围有 Windows 服务器,您也可以在那里创建您的域并将您的所有计算机加入该域,再次使用 winbind for linux。

    使用 winbind 的复杂性之一是为 linux 分配或映射 UID。不复杂,但要注意。

    如果您注意到我跳过了一些细节,那么您有一种轻描淡写的天赋。有一些关于这个主题的书遗漏了重要的细节。你有一些阅读要做。

    【讨论】:

    • 目前我还不知道为什么我有 SID 而不是 UID。
    • Linux(与所有 unix 变体一样)使用 UID(用户 ID)。 windows 使用了 SID。
    • 但是 Windows 说“\\smart-server\Username”而不是“(Unix User\Username)”是否正常?
    • 是的,我也烦。我很想看到有关该决定的设计文档,因为它是准一致的,即每个网络都有可重复但可能与其他网络不同的行为。我怀疑域控制器存在一些差异。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-19
    • 1970-01-01
    • 2017-01-09
    • 2013-09-20
    • 2015-10-12
    • 1970-01-01
    • 2021-06-13
    相关资源
    最近更新 更多