目錄
摘要
「輕量型目錄存取協定」(Lightweight Directory Access Protocol,LDAP) 是通訊協定集合用以存取和維謢資訊目錄。LDAP 可做為許多用途,像是使用者與群組管理、系統組態管理或是位址管理。本章針對 OpenLDAP 如何運作以及如何使用 YaST 來管理 LDAP 資料提供基本的概念。雖然 LDAP 協定有數種執行方式,但是本章只著重於 OpenLDAP 執行方式。
在網路環境中保持重要資訊的結構性和容易存取是相當重要的。要達到此一目的,可使用黃頁之類的目錄服務,它會以結構良好並且快速搜尋的形式來保存資訊以供存取。
在理想的狀況下,中央伺服器會將資料保存在目錄中,並使用特定的協定將資料分送給所有用戶端。資料的結構允許各種不同的應用程式進行存取。如此,個別的行事曆工具和電子郵件用戶端就不需要維護自己的資料庫,而是存取一個中央儲存區。此一特性明顯降低管理資訊的需要。使用 LDAP 等開放且標準化的協定,以盡量確保所有不同的用戶端應用程式都能存取這類的資訊。
此處所指的目錄是一種最佳化的資料庫,可供快速而有效的讀取和搜尋:
為了能夠同時大量讀取,寫入權限僅限管理員所執行的少量更新作業。舊式的資料庫會進行最佳化,以容許在最短時間內接受最多的資料量。
由於寫入的存取限制極大,因此採用目錄服務來管理大多數未變更的靜態資料。舊式資料庫中的資料經常變更 (動態資料)。舉例來說,企業目錄中的電話號碼變更頻率,會低於會計部門所管理數字的變更頻率。
管理靜態資料時,很少會更新現存的資料集。管理動態資料時,特別是銀行帳戶或會計相關的資料集時,最重要的是保持這些資料的一致性。如果要從一筆資料扣除一個數目,然後將它加到另一筆資料,則必須在同一筆交易內同時進行這兩個動作,以確保整個資料集的餘額正確無誤。資料庫可支援此種交易。目錄則否。目錄可接受短暫性的資料不一致。
LDAP 這類的目錄服務並不是設計來支援複雜的更新或查詢。所有的應用程式在存取這種服務時,都應該以快速簡便的方式進行。
Unix 系統管理員習慣使用 NIS 伺服器進行名稱解析和網路資料散佈。包含於 /etc
中的檔案和 group
、hosts
、mail
、netgroup
、networks
、passwd
、printcap
、protocols
、rpc
和 services
等目錄下的組態資料是由網路中的用戶端進行散發。因為這些檔案是簡單的文字檔,因此相當容易維護。不過,因為缺乏結構,較大量的資料處理變得更加困難。NIS 的設計只適用於 Unix 平台,這意味著它不適合做為異質性網路的中央資料管理工具。
和 NIS 不同,LDAP 伺服器不限於純 Unix 網路。Windows 伺服器 (2000 或更新) 支援 LDAP 的目錄服務功能。其他非 Unix 系統也可為前述應用程式任務提供更多支援。
LDAP 規則可套用於任何必須進行中央管理的資料結構。以下為幾個應用程式範例:
做為 NIS 服務的替代品使用
郵件路由 (postfix、sendmail)
郵件用戶端的通訊錄,例如 Mozilla、Evolution 和 Outlook。
BIND9 名稱伺服器的區域描述管理
在異質網路中,利用 Samba 進行使用者驗證
這個清單還可加長,因為 LDAP 是可以延伸的,和 NIS 有所不同。由於清楚定義的資料階層結構可方便搜尋,使得管理大量資料的工作更為容易。