我想将 Windows 8(Microsoft 帐户)用户添加到独立(非域)Linux 服务器上的 SAMBA 用户,但我不知道 Microsoft 帐户如何映射到 Linux。我还根据组访问设置了 Samba 共享。
我在 SAMBA 中启用了来宾,因此当我的 Windows 8 工作站首次连接时,它无法识别用户并以来宾身份连接到 SAMBA,而没有将任何人作为用户。现在,当我连接到共享时,它始终以来宾身份连接(即 SAMBA 上的任何人用户)。我希望来宾用户仍被允许以只读身份连接。有没有办法强制 Windows 8 再次提示登录?请注意,我的共享未映射到资源管理器中,它们是可浏览的。
答案1
我假设您有一个带有中央用户配置文件(活动目录)的中央 Windows 服务器。要集成这些工作站,您必须将用户主目录安装到/home
Linux 机器上,并将活动目录连接到 Linux。
您要搜索的关键字是:ldap pam 活动目录集成. 有用链接:
请注意,通常不建议将 Windows 机器集成到 Linux/LDAP 中(除非您有大量的空闲时间)。它可能与 Samba 4.0 配合使用效果良好。我没有尝试过,因为它提供了自己的 LDAP...
编辑:我想我可能误解了你。如果你想从 Windows 访问 Linux Samba 共享,只需按照Ubuntu Samba 服务器指南。如果您想以 $user 身份登录服务器,只需在服务器上创建 $user。并为用户设置 samba 密码:
smbpasswd -a $user
根据您的需要配置 samba 服务器。注意:这种设置不需要 ldap/kerberos。通常使用您的 Windows 用户名和密码作为 Linux 用户 $user 的用户名/密码会有所帮助。在这种情况下,您不需要在 Windows 上配置任何密码。
答案2
我还没有真正尝试过,但我可能很快就会需要它。也许吧此链接能帮到你吗?为了方便以后参考,我也会把建议的解决方案复制到这里。
在 /etc/samba/smbusers 中添加一行,格式如下:
linux_name = windows_name1 windows_name2 <etc.>
e.g.
a_user = [email protected]
这会将 Windows 名称(即您用于登录 Windows 8 的 Microsoft 帐户)映射到 Linux 名称(即现有的 Linux 和 Samba 帐户)。您可能还需要将此参数添加到 /etc/samba/smb.conf 的 [global] 部分。
username map = /etc/samba/smbusers
要测试配置,请使用以下命令:
testparm -vs | grep "username map"
如果你让它工作了请告诉我!