構建基於LDAP的地址薄之一 提高篇(轉)

post0發表於2007-08-10
構建基於LDAP的地址薄之一 提高篇(轉)[@more@]

GUI 目錄管理

雖然大多數管理員都寧願使用 LDIF 檔案和 OpenLDAP 的命令列介面,但有幾個可用的 GUI 目錄管理程式,願意嘗試它們的人不妨試一下。有兩個示例:

Directory Manager(請參閱參考資料)是用於管理 LDAP 目錄資料的開放原始碼圖形工具。它包括與模式無關的編輯器、模式檢視器和許多檢視資料的不同方法。另外,Directory Manager 還有建立您自己的定製檢視的功能。Directory Manager 需要 LDAP v3 伺服器。儘管其版本號較早(0.91),但該產品非常有用,並以我的個人經驗而言,在生產環境中使用它是安全的。

由 Jarek Gawor 開發的 LDAP Browser/Editor(請參閱參考資料)是另一種目錄管理實用程式。與某些允許使用者瀏覽、搜尋和編輯目錄項的相似工具(當前版本是 2.8.1)相比,它更成熟且特性豐富。然而,它是收費產品,而且要求使用者購買許可證。下面是 Jarek 的 LDAP Browser/Editor 的抓屏:

[myimg][/myimg]

使用Rolodap建立地址簿

介紹Rolodap

對於所有那些不熱衷於以手工方式或使用指令碼來填充 LDAP 目錄的使用者,還有一個選擇:Rolodap(有關資訊和連結,請參閱參考資料)。Rolodap 是一個開放原始碼專案,它使用 LDAP 目錄來儲存聯絡資訊。另外,Rolodap 提供一個由 PHP 驅動的 Web 介面,它允許您從任何 Web 瀏覽器維護您的地址簿(也允許多個地址簿)。

有什麼竅門?絕對沒有,除此之外,為了使用 Web 介面,您需要安裝和配置三個附加的軟體包 — Apache、PHP 和 PHP-LDAP。本章描述如何安裝和配置 Rolodap。

軟體包需求

Rolodap 需要下列軟體包:

openldap-server

openldap

openldap-devel

openldap-client

apache

php

php-ldap

上面的列表中故意沒有列出版本號,因為到您閱讀本文時,Apache 和 PHP 將很可能有更新的發行版。檢視 Red Hat 站點,獲取最新的穩定的軟體包(有關連結,請參閱參考資料)。

一旦安裝完所有軟體包,在繼續之前,請檢查一下以確保 Apache 和 PHP 都正確工作。

下列配置步驟假設:

Apache 的 DocumentRoot 是 /home/httpd/html。

OpenLDAP 配置檔案在 /etc/openldap 中。

您以 root 使用者身份登入。

OpenLDAP 伺服器將僅擁有 Rolodap 的資料項。

您只使用 Apache 執行 Rolodap 介面,並且不為公共 Web 頁面提供服務。

最後這個問題很重要 — 在公共 Web 伺服器上執行 LDAP 介面需要提供超出本教程範圍的安全性。

下載Rolodap

Rolodap 的當前發行版是版本 1.0(有關下載連結,請參閱參考資料)。將用 gzip 壓縮的 tar 包(加上附帶的 schema、ldif 和 conf 檔案)下載到您選擇的目錄,將檔案移到 Apache 的 DocumentRoot,對它解壓縮,然後重新命名已建立的目錄,如下所示:

mv /temp/rolodap-v1.tar.gz /home/httpd/html

cd /home/httpd/html

tar xvzf rolodap-v1.tar.gz

mv rolodap-v1 rolodap

編輯 rolodap.conf

下一步是配置 Rolodap。將 rolodap.conf 檔案複製到 /etc(使用上一頁中提供的示例路徑 cp /home/httpd/html/rolodap/config/rolodap.conf /etc )。在您喜愛的文字編輯器中開啟該檔案( vi /etc/rolodap.conf ),通讀註釋,然後根據您的實現的需要編輯項。

有關資料庫佈局的詳細資訊,請參閱 Rolodap 自述檔案(/home/httpd/html/rolodap)。

配置 OpenLDAP 伺服器

當前修訂版級別的 Rolodap 只是為了用於儲存在 OpenLDAP 伺服器上的資料而設計的。如果這與您的方案匹配,則將 core.schema 和 rolodap.schema 從 /home/httpd/html/rolodap/ 複製到 /etc/openldap/schema。Rolodap 還包含位於 /home/httpd/html/rolodap/config 目錄中的樣本 slapd.conf 檔案。或者將該檔案複製到 /etc/openldap(備份原始 FIRST),或者記下必需的更改,然後根據需要編輯原始的 slapd.conf。與 Rolodap 捆綁在一起的自述檔案包含有關必需更改的詳細資訊。

如果正在使用 OpenLDAP 儲存除 Rolodap 項之外的其它資料,您可能必須調整兩個模式檔案以及與 Rolodap 捆綁在一起的配置檔案,以使每件事情都能象宣稱的那樣出色地完成。

接下來,確保 /etc/openldap/slapd.conf 的檔案許可權是正確的。與 Red Hat 7.3 捆在一起的 OpenLDAP 伺服器以使用者 ldap 的身份執行,所以您必須確保該使用者可以讀檔案:

chgrp ldap /etc/openldap/slapd.conf

chmod g+rw /etc/openldap/slapd.conf

最後,重新啟動 OpenLDAP 伺服器,使更改生效: service ldap restart 。

填充 LDAP 目錄

下一步是配置和填充初始的 Rolodap 資料庫。編輯位於 /home/httpd/html/extras 中的 sample.ldif 檔案以適應您期望的配置。明確地講,您需要更改 DN 項、管理資訊和 UID 等,以便符合您的系統配置。請記住,dn: o=contacts.company.net 只是 dn: ou=contacts,dc=company,dc=net 的替代項。如果您覺得後一種約定更方便,則適當地編輯 sample.ldif。當您感到滿意時,輸入下列命令以將包含在 sample.ldif 中的資訊輸入到 OpenLDAP 目錄中:

ldapadd -f sample.ldif -xv -h yourldapserver -D"cn=admin,dc=yourdomain,dc=com" -w password

用伺服器名替換“yourldapserver”,用您的域或組織替換“yourdomain”,用 sample.ldif 中用於管理使用者的密碼項替換“password”。如果在更新過程期間接收到錯誤訊息,請仔細地檢查一下 sample.ldif 中所有項的拼寫和語法。

最後,啟動瀏覽器……

後一步是透過細讀新的 OpenLDAP 目錄來嘗試 Rolodap。將瀏覽器指向 。應該出現一個登入頁面。輸入您在 sample.ldif 中輸入的(常規使用者,而不是管理使用者)使用者名稱和密碼,並花一些時間檢查 Rolodap 的各種特性,新增一些新聯絡人或建立新的地址簿。下面的抓屏顯示了簡單搜尋(上面)和使用者“主頁”(下面)的介面。

[myimg][/myimg]

[myimg][/myimg]

如果您在訪問或登入 Rolodap 時遇到困難,請檢查 Apache 日誌檔案,以獲取關於問題根源的任何線索。

那麼,可以將基於 Rolodap 的 LDAP 目錄用作您所喜愛的電子郵件客戶機的地址簿嗎?當然……請繼續讀下去;下一章有所有的詳細資訊。

配置支援LDAP的電子郵件客戶機

配置概述

最後一章詳細描述了訪問儲存在 LDAP 目錄中的聯絡資訊資料的最後一個步驟 — 配置電子郵件客戶機以搜尋 LDAP 目錄,而不是搜尋應用程式的預設地址簿。設法為市場上的每種電子郵件客戶機提供特定細節是不切實際的,但在所有支援 LDAP 的應用程式可以連線到目錄服務之前,它們確實需要幾條獨特的資訊:

伺服器的名稱

開始搜尋所請求資訊的位置或搜尋庫(search base)

LDAP 伺服器正在“偵聽”的埠號(預設值是 389)

使用者名稱和密碼

對於某些應用程式,需要搜尋規則(search rule)(這通常預設為“*”,表示所有記錄)

接下來的幾頁略述了三種常用的電子郵件客戶機(Pine、Mulberry 和 Outlook Express)的必需過程。正如您將看到的,每個程式都有其自己的特點,但它們都遵循同一個通用過程。

Pine

許多 UNIX“頑固分子”都將 Pine 稱為“一個真正的郵件程式”。Pine 是一種基於控制檯/文字的客戶機,它包含在大多數主要的 Linux 分發版中。下列指令基於執行於 Red Hat 7.3 上的 Pine 版本 4.44。

從 Pine 主選單,選擇 Setup --&gt Directory。

選擇 Add Directory,然後輸入下列命令:

ldap-server: thor.syroidmanor.com(在這裡替代伺服器名)。

search-base: ou=people(或聯絡人,取決於您的配置)。

nickname: thor

選中核取方塊“use-implicitly-from-composer”。

在“search-rule”下,輸入“*”。

儲存您的更改。現在,當您在編寫訊息時輸入部分電子郵件地址,Pine 應該查詢該項的匹配,並完成它。對於具有多個匹配的項,將彈出一個框,允許您選擇要使用的地址。

Mulberry

Mulberry(請參閱參考資料,以獲取連結)已經出現好幾年了,它在許多平臺上執行,是那些“隱藏的寶石”之一 — 很少有人聽說過它,但使用它的人都信賴它。要配置 Mulberry 以將 LDAP 目錄用作其預設地址簿:

從任何開啟的視窗,選擇 File --&gt Preferences。

單擊 Accounts 選項卡,然後從 Accounts 下拉選單選擇 New。

選擇 New,輸入帳戶名稱,然後從 Account Type 下拉選單,單擊 LDAP Address Search。

在 Authentication 選項卡上,選擇 Method。

在 Options 選項卡上,選中 Use when Searching,如果您願意的話,還可選擇 Use with Address Expansion。

在 Attributes 1 和 2 下,填充適合於您的安裝的任何欄位。您將需要的一個欄位是 Root。使用本章中顯示的示例:cn=people,dc=syroidmanor,dc=com

Outlook Express

要將 Outlook Express 地址簿遷移到這個開放標準,請遵循下列步驟:

轉至 Tools 選單,然後選擇 Address Book。

在 Address Book 視窗中,轉至 Tools 選單,然後單擊 Accounts。

在 Internet Accounts 對話方塊的右邊,選擇 Add 按鈕。

將出現 Internet Connection 嚮導。您將需要輸入因特網目錄(LDAP)伺服器的名稱並選擇“My LDAP server requires me to logon”。在下一個對話方塊上,選擇“Do you want to check addresses using this directory service”下的“Yes”。最後,單擊 Finish 以完成該向導。

在關閉 Internet Accounts 對話方塊之前,單擊 Directory Services 選項卡並確保剛才建立的項位於所示列表的頂部。

結束語

LDAP 目錄服務是一種功能強大的解決方案,適合於需要或期望將特定型別的資訊集中儲存的任何人。LDAP 的樹/葉結構尤其適合於快速搜尋不經常更改的資料,如使用者認證、DNS 查詢和使用者/組資訊。本教程集中討論了實現基於 LDAP 的地址簿,然後電子郵件客戶機可以使用它來搜尋聯絡詳細資訊。

本教程討論了下列主題:

LDAP 背後的技術、目錄結構、物件類和模式等。

安裝和配置 OpenLDAP

配置 OpenLDAP 伺服器

將資料填充到 OpenLDAP 伺服器

訪問和搜尋 LDAP 資料庫

配置電子郵件客戶機來查詢電子郵件地址

正如您所發覺的那樣,設定實用的 LDAP 目錄伺服器是一個很大的且變化很多的主題,它在很大程度上取決於實現的需求。接下來的兩頁包含了許多附加參考資料,有初級的,也有高階的,它們對 LDAP 目錄服務幾乎無限的能力提供了簡明的概述。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-940592/,如需轉載,請註明出處,否則將追究法律責任。

相關文章