如何將我的 FreeNAS 文件伺服器連接到我的 Mac OS X 目錄伺服器?
我正在嘗試將我的文件伺服器(FreeNAS 8.0.1 / 8.2-RELEASE-p7)與我的 Mac OS X 10.7 Lion 目錄伺服器的 Open Directory 連接…我知道 Mac OS X 提供了 LDAP 服務,其他伺服器可以通過該服務進行身份驗證反對,但我很難讓 FreeNAS 針對 Mac OS X 開放目錄進行身份驗證。
如何將我的 FreeNAS 文件伺服器連接到我的 Mac OS X 目錄伺服器?
經過數小時的Google搜尋和測試,我終於設法將 FreeNAS 8 與 Mac OS X Open Directory 集成。以下是實現這一目標所需要的:
首先,使用 Server Admin 應用程序確保 Open Directory 已啟動並正在執行:
請注意LDAP Search Base和Kerberos Realm。
在 FreeNAS 的 Web GUI 中,配置 LDAP 服務如下:
- 主機名: your.servers.hostname.or.ip
- Base DN: 來自 Open Directory的LDAP 搜尋庫**
- **允許匿名綁定:**未選中(我已將其關閉並綁定為我的
diradmin
使用者,但這可能是不必要的……)- Root Bind DN:
uid=diradmin,
然後是 Base DN- Root 密碼: 您的 Open Directory
diradmin
使用者的密碼。同樣,這可能是不必要的,我不確定- 密碼加密:
crypt
- 使用者後綴:
cn=users
- 組後綴:
cn=groups
- 密碼後綴:
cn=users
- 機器後綴:
cn=computers
- 加密方式:
Off
- 自簽名證書: 空
- 輔助參數:
ldap_version 3 timelimit 30 bind_timelimit 30 bind_policy soft pam_ldap_attribute uid sasl-host *your.open.directory.server.ip.or.hostname* sasl-realm *YOUR.KERBEROS.REALM.FROM.FIRST.STEP*
輔助參數是關鍵,尤其是
sasl-host
和sasl-realm
。顯然,將*your.open.directory.server.ip.or.hostname*
和替換*YOUR.KERBEROS.REALM.FROM.FIRST.STEP*
為第一步中的資訊(參見第一個螢幕截圖)**當您保存更改時,LDAP 應該開始為除Samba/CIFS 之外的所有服務工作。**部分鬥爭是如何修復 Samba:在 FreeNAS 上最初配置 LDAP 服務後,我發現根本沒有使用者可以通過 Samba 連接,即使是在 FreeNAS 機器上本地定義的使用者。
Samba 的日誌中沒有錯誤,只是客戶端電腦上的權限被拒絕錯誤。更多研究表明,我必須啟用 FreeNAS Samba 伺服器才能使用 SASL與LDAP 配置分開對 Mac OS X Open Directory 進行身份驗證。
重要的是要注意 Mac OS X LDAP 數據庫不包含密碼數據。只能通過 SASL/Kerberos 進行身份驗證。在 Apple 論壇上引用David Colville1 的話:
與其他一些 LDAP 目錄不同,OS X 不在 LDAP 記錄中儲存密碼——它使用“SASL”機制——它查詢“AuthenticationAuthority”屬性以告知可以檢索使用者密碼的位置。
密碼儲存在 PasswordServer(SASL 伺服器)、CRAM-MD5、Digest-MD5、DHX 等中(參見 Open Directory 管理指南的第 50 頁)。
這就是為什麼
sasl-host
LDAP 配置中如此重要的原因。配置 Samba 以使用 SASL:
更新 2012-12-31:這不再適合我。我已經嘗試了幾個小時來確定原因,但到目前為止一直無法確定。
在 FreeNAS Web GUI 中,配置 CIFS 服務如下:
(CIFS 配置螢幕很長,為了清楚起見,我將最頂部和最底部組合在一起)
- 認證模型:
Local User
- 輔助參數:
password server = *YOUR.KERBEROS.REALM.FROM.FIRST.STEP* client ntlmv2 auth = yes
保存這些更改後,測試使用 Open Directory 中定義的使用者連接到 Samba 並確認您可以連接。此外,使用 AFP/SSH 進行測試,以確認它們也在針對 Open Directory 進行身份驗證。
已知的問題
有幾件事我無法解決:
- Mac OS X LDAP 伺服器上的使用者主目錄採用
/Network/Servers/some.server/some.directory/username
. 但是 FreeNAS 沒有/Network/Servers
目錄。mkdir -p /Network/Servers
對使用者的主目錄進行符號連結非常簡單,但是/
它是只讀安裝的,所以我不能這樣做。因此 LDAP 使用者不能擁有.AppleVolumes
自定義 AFP 共享的文件。**更新 2012-12-31:**我發現 Mac OS X 將允許主目錄格式為
/mnt/somewhere/someuser
,允許 Mac OS X 使用者的主目錄匹配 FreeNAS 文件系統,解決了這個問題。 2. Samba/CIFS 現在只能驗證 LDAP 使用者。這意味著任何通過 Samba 連接的使用者都必須在 LDAP 數據庫中有一個antry,本地使用者將不再工作。這意味著您不能擁有主目錄共享,請參閱#1。