我正在为一家小公司实施新的文件存储解决方案,我想使用 Server 2008 R2 提供 Active Directory 身份验证,但在 Unix/ZFS 文件服务器上托管文件,以利用 ZFS 提供的重复数据删除、快照和池管理。有没有一种简单的方法可以根据 Active Directory 凭据控制对 ZFS 共享的访问?
我原本想在文件服务器上创建 iSCSI 目标并让 Windows Server 处理存储,但我很确定如果这样做,我将失去使用 ZFS(重复数据删除和快照)所获得的几乎所有好处。
答案1
如果您计划使用 OpenSolaris,那么使用内置 CIFS 服务器很简单。您可以使用“smbadm”命令将 OpenSolaris 服务器加入您的域。完成此操作后,ZFS 的 ACL 将实际将每个 AD 用户的 SID 存储在文件 ACL 条目中,因此您可以像平常一样从管理员帐户创建文件 ACL(确保您使用支持 ZFS ACL 的归档程序进行备份,否则如果从备份中恢复文件,您将不得不重新设置权限)。
您还可以使用 AD 启用名称解析,具体如下这文档。设置 AD 用户帐户解析后,您可以在 chmod ACL 命令中使用“user@domain”符号从 unix shell 向 windows 用户授予权限。
当在 ZFS 文件系统上使用内置 CIFS 服务器快照时,对于 Windows 客户端来说,快照似乎是“以前的版本”,如果您通过 cron 创建快照,则可以允许用户自己恢复意外删除的文件。
答案2
看起来 ZFS 的最新版本也内置了 CIFS 服务器。我不知道它与 AD 的集成程度有多紧密,但您始终可以从登录脚本中将“net use”语句指向它,与任何其他 CIFS NAS 一样,并从现有工具中管理权限。
我不知道为什么 iSCSI 目标不能利用重复数据删除和快照功能,ZFS 文档中是否提到过这一点?
答案3
尝试NexentaStor因为它的开发更加活跃,而且目前肯定比原始的 OpenSolaris 解决方案更加完善。到目前为止,我对 AD 集成的体验还不错,但我最终可能会选择在 ZFS 上托管的虚拟机或从 ZFS 共享的原始 iSCSI LUN。
答案4
Samba 可以成为具有完整 AD 语义的 Active Directory 中的成员服务器。