Authentication

使用 Kerberos 對 OpenSolaris 提供的 CIFS 共享進行身份驗證

  • December 12, 2009

我有一個 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 的方式”和“這是您創建共享的方式”,然後停止。如果你有這個工作或知道一些資源來幫助我,我會很感激。謝謝!

目前的 OpenSolaris 版本不支持 CIFS 共享的 Kerberos 身份驗證。該功能顯然是“即將推出”。參考:

引用自:https://serverfault.com/questions/93524