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]http://bbs.chinaunix.net/forum/uploadfile/111_22291094553224.jpg[/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。將浏覽器指向 http://localhost/rolodap。應該出現一個登錄頁面。輸入您在 sample.ldif 中輸入的(常規用戶,而不是管理用戶)用戶名和密碼,並花一些時間檢查 Rolodap 的各種特性,添加一些新聯系人或創建新的地址簿。下面的抓屏顯示了簡單搜索(上面)和用戶“主頁”(下面)的界面。
[myimg]http://bbs.chinaunix.net/forum/uploadfile/111_58181094553334.jpg[/myimg]
[myimg]http://bbs.chinaunix.net/forum/uploadfile/222_76511094553451.jpg[/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 --> 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 --> 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 目錄服務幾乎無限的能力提供了簡明的概述。
本教程討論了下列主題:
LDAP 背後的技術、目錄結構、對象類和模式等。
安裝和配置 OpenLDAP
配置 OpenLDAP 服務器
將數據填充到 OpenLDAP 服務器
訪問和搜索 LDAP 數據庫
配置電子郵件客戶機來查詢電子郵件地址
正如您所發覺的那樣,設置實用的 LDAP 目錄服務器是一個很大的且變化很多的主題,它在很大程度上取決於實現的需求。接下來的兩頁包含了許多附加參考資料,有初級的,也有高級的,它們對 LDAP 目錄服務幾乎無限的能力提供了簡明的概述。