LDAP 可讓您的 DiskStation 以 LDAP 用戶端的身分加入現有的目錄伺服,並從 LDAP 伺服器 (或稱「目錄伺服器」) 擷取帳號及群組資訊。您可以管理 LDAP 使用者或群組對 DSM 應用程式及共用資料安的存取權限,就像管理本地 DSM 使用者或群組一樣容易。如需更多 LDAP 的相關資訊,請參閱此處。
支援的 LDAP 標準為 LDAP 第 3 版 (RFC 2251)。
啟動 CIFS 支援之後,LDAP 使用者可能需要修改電腦的設定才能透過 CIFS 存取 DiskStation 檔案:
sudo touch /etc/nsmb.conf
sudo vi /etc/nsmb.conf
[default]
minauth=none
若您使用 smbclient,請在 smb.conf 的 [global] 區塊中新增下列機碼:
encrypt passwords = no
client plaintext auth = yes
client lanman auth = yes
若您使用 mount.cifs,請執行下列指令:
echo 0x30030 > /proc/fs/cifs/SecurityFlags
如需更多詳細資訊,請參閱 https://www.kernel.org/doc/readme/Documentation-filesystems-cifs-README
不同 LDAP 伺服器可能使用不同屬性當做帳號名稱、群組名稱,或是區分帳號與群組。設定檔選項可讓您指定或自訂使用者及群組資訊如何對應至 LDAP 屬性。您可以依照您的 LDAP 伺服器選擇下列其中一個設定檔:
若要自訂各種 LDAP 屬性的對應,必須先有些背景知識。Synology DSM 遵循 RFC 2307 的規範,而設定檔的編輯器也遵循相同的原則。例如,您可以指定 filter 裡的 passwd 為 userFilter,DiskStation 便會將您 LDAP 伺服器裡符合 objectClass=userFilter 的資料視為 LDAP 帳號。如果指定 passwd 裡的 uid 為 username,DiskStation 便會將您 LDAP 伺服器上的 username 視為帳號名稱。若是留空不填則表示遵循 RFC 2307 規範。
DiskStation 需要一個固定不變的整數當作 LDAP 帳號的識別碼 (uidNumber) 與 LDAP 群組的識別碼 (gidNumber)。但不是所有 LDAP 伺服器都使用整數來表示這樣的屬性。因此,我們提供一個關鍵字 HASH() 來將其轉為整數。例如,您的 LDAP 伺服器可能使用一個值為 16 進位的屬性 userid 作為 LDAP 帳號。在此情況下,您可以將 passwd 的 uidNumber 設為 HASH(userid) 來讓 DiskStation 將其轉為整數。
以下是可供自訂屬性的摘要:
為避免 LDAP 使用者 / 群組及本地使用者 / 群組間發生 UID / GID 衝突,您可以啟動 UID / GID 位移來將 LDAP 使用者 / 群組的 UID / GID 位移 1000000。此選項僅適用於非 Synology 的 LDAP 伺服器,且該伺服器針對每個使用者 / 群組提供以數字組成、獨特的 ID 屬性。