我有一台 OpenSolaris 服务器(运行 snv_128a),我已 (a) 将其加入 Active Directory 域并且 (b) 配置为通过 CIFS 导出某些文件系统:
# sharemgr show -vp
default nfs=()
zfs
zfs/rpool/export/public nfs=() smb=()
rpool_export_public=/export/public
我可以使用用户名和密码成功访问此共享:
$ smbclient //muadib/rpool_export_public
Enter lars's password:
Domain=[SEAS] OS=[Windows NT 4.0] Server=[NT LAN Manager 4.0]
smb: \>
我有有效的 Kerberos 凭据。例如,我可以使用 GSSAPI 身份验证通过 SSH 连接到同一个 OpenSolaris 框:
$ ssh -v muadib
.
.
.
debug1: Next authentication method: gssapi-with-mic
debug1: Delegating credentials
debug1: Delegating credentials
debug1: Authentication succeeded (gssapi-with-mic).
但我无法使用 Kerberos 访问 CIFS 共享:
smbclient -k //muadib/rpool_export_public
Domain=[SEAS] OS=[Windows NT 4.0] Server=[NT LAN Manager 4.0]
tree connect failed: NT_STATUS_ACCESS_DENIED
我没有收到任何有用的错误消息。事实上,唯一记录的消息是:
Dec 11 13:54:57 muadib smbsrv: [ID 138215 kern.notice] NOTICE:
smbd[NT Authority\Anonymous]: rpool_export_public access denied: IPC only
我能够使用 Kerberos 对网络上其他地方的网络共享进行身份验证。
我找不到太多文档来介绍 OpenSolaris 上 CIFS 服务的这个特定方面。我找到的大多数文档都只提到了“这是启用 CIFS 的方法”和“这是创建共享的方法”,然后就停止了。如果您能解决这个问题或者知道一些资源来帮助我,我将不胜感激。谢谢!
答案1
OpenSolaris 的当前版本不支持 CIFS 共享的 Kerberos 身份验证。该功能显然“即将推出”。参考资料: