我有我的魔法三角工作中真正重要的部分——我绑定到 AD 和 OD 的 Mac OS X 客户端可以使用域凭据登录。不起作用的是从 mac 服务器共享文件夹到客户端。当客户端使用 Go -> Connect to server 并指定 smb://mac-server/sharedfolder 或 afp://mac-server/sharedfolder 时,会提示用户输入凭据,并且域凭据不起作用(抖动窗口拒绝)。我试过在用户名前面加上域,但没有运气。
DNS 工作正常,客户端可以同时解析 mac-server 和我们的 AD 域控制器
mac服务器的DSCONFIGAD如下:
mac-server:~ macadmin$ dsconfigad -show
Active Directory Forest = campus.zzz.edu
Active Directory Domain = campus.zzz.edu
Computer Account = mac-server$
Advanced Options - User Experience
Create mobile account at login = Disabled
Require confirmation = Enabled
Force home to startup disk = Enabled
Mount home as sharepoint = Enabled
Use Windows UNC path for home = Enabled
Network protocol to be used = smb
Default user Shell = /bin/bash
Advanced Options - Mappings
Mapping UID to attribute = not set
Mapping user GID to attribute = not set
Mapping group GID to attribute = not set
Generate Kerberos authority = Enabled
Advanced Options - Administrative
Preferred Domain controller = not set
Allowed admin groups = not set
Authentication from any domain = Enabled
Packet signing = allow
Packet encryption = allow
Password change interval = 14
Restrict Dynamic DNS updates = not set
Namespace mode = domain
mac-server:~ macadmin$
我的共享文件夹配置如下:
有趣的是,客户端可以: * 使用 Active Directory 凭据登录 * 访问他们有权访问的其他网络资源(例如我们的常规文件服务器),而不会被提示输入凭据
客户端不能: * 连接到 mac-server 文件共享。
从客户端添加的 AD 和 OD:
我猜只有 AD 集成在我的魔三角中起作用,但 OD 集成不是。不幸的是,OpenDirectory 在 Server.app 中似乎没有任何/很多选项可以摆弄。
在 server.app 内置的日志查看器中,我确实在 AFP 日志中看到了一个奇怪的错误:
Jul 15 15:18:42 mac-server.campus.zzz.edu AppleFileServer[25005] <Info>: **** - - "SACL membership failure for user chalstead" 0 0 0
我很乐意提供更多细节。我很好奇这次 SACL 会员资格失败,但不确定这是否是一棵树现在可以吠叫。我怀疑我错过了一些更基本的东西。
您所描述的内容与不在 Mac 服务器的 SACL(服务访问控制列表)中的 AD 用户一致。您可以通过进入 Server.app -> 侧边栏中的用户 -> 从用户列表上方的弹出菜单中选择“来自 ADDOMAIN 的用户”-> 选择 chalstead(或您可以测试的其他一些 AD 用户)-> 从用户列表下的操作(齿轮图标)菜单选择“编辑对服务的访问” -> 检查是否启用了“文件共享”服务。
如果没有为相关用户启用文件共享,您可以为每个用户启用它(单独或通过选择一堆并一次设置它们),但如果您设置它通常更容易管理按组。界面本质上是相同的,只是在组而不是用户部分(然后在用户部分进行验证)。
我已经看到它在更改后无法正确更新(本质上,它似乎缓存了 SACL 故障);如果您将其放置足够长的时间,这似乎会消失,但如果还没有人使用 Mac 服务器,您可以使用蛮力解决方案:重新启动服务器。
编辑:一旦修复,您可能还必须在 Mac 服务器上启用 AD 的 Kerberos 单点登录。如果在连接到 Mac 服务器时提示您输入凭据,但在您提供凭据时允许输入,您可能需要进行设置:
sudo ktutil -k /etc/krb5.keytab list
——如果结果包括以“@ADDOMAIN.EDU”结尾的条目,那么你很好。(注意:它还将包含一堆“@LKDC:SHA1.hexgibberish”,可能还包含“@MAC-SERVER.whatever”条目;忽略这些。)sudo dsconfigad -enableSSO
,然后使用 重新检查ktutil
。如果您通过 Google 找到此页面并使用 10.6 服务器,则您可能需要根据需要将用户或组添加到服务器管理的允许访问部分。
服务器管理员 > 访问 > 选择服务(afp、smb 等)> 添加用户/组