手把手教您配置Liunx目錄服務(wù)器
近幾年,隨著LDAP(Light Directory Access Protocol,輕量級(jí)目錄訪問(wèn)協(xié)議)技術(shù)的興起和應(yīng)用領(lǐng)域的不斷擴(kuò)展,目錄服務(wù)技術(shù)成為許多新型技術(shù)實(shí)現(xiàn)信息存儲(chǔ)、管理和查詢的首選方案,特別是在網(wǎng) 絡(luò)資源查找、用戶訪問(wèn)控制與認(rèn)證信息的查詢、新型網(wǎng)絡(luò)服務(wù)、網(wǎng)絡(luò)安全、商務(wù)網(wǎng)的通用數(shù)據(jù)庫(kù)服務(wù)和安全服務(wù)等方面,都需要應(yīng)用目錄服務(wù)技術(shù)來(lái)實(shí)現(xiàn)一個(gè)通用、 完善、應(yīng)用簡(jiǎn)單和可以擴(kuò)展的系統(tǒng)。
對(duì)于任何一家大IT網(wǎng)絡(luò)的企業(yè)來(lái)說(shuō),IT系統(tǒng)中的目錄服務(wù)功能是必不可少的。如果一個(gè)在全國(guó)有多個(gè)分支機(jī)構(gòu)的企業(yè),已經(jīng)有了一個(gè)內(nèi)部網(wǎng)絡(luò)系統(tǒng),每一個(gè)分支 機(jī)構(gòu)都有一個(gè)局域網(wǎng),局域網(wǎng)之間通過(guò)專線或者VPN通道連接在一起,那么,如何將網(wǎng)絡(luò)中的資源和信息有效地管理起來(lái)呢?通常,這個(gè)企業(yè)可以在每一個(gè)分支機(jī) 構(gòu)或者每個(gè)城市建立一個(gè)目錄服務(wù)器,任何地方的員工連接到本地目錄服務(wù)器就可以訪問(wèn)到目錄樹(shù)中所有的信息,在目錄服務(wù)器之間復(fù)制目錄信息,以保持同步。比 如,人事部門看到的人員目錄與財(cái)務(wù)部門、設(shè)備管理部門看到的人員目錄是完全一致的,他們所使用的應(yīng)用系統(tǒng)無(wú)須再建立另一套目錄結(jié)構(gòu)。當(dāng)然,這一切都是要經(jīng) 過(guò)身份驗(yàn)證的。
目錄服務(wù)有著如此重要的作用,但在過(guò)去,企業(yè)通常采用基于Windows的目錄服務(wù)器,Linux在這方面相形遜色。作為Windows的核心內(nèi)容,目錄 服務(wù)被企業(yè)IT人員認(rèn)為是Windows與Linux相比最具競(jìng)爭(zhēng)力的部分,也成為L(zhǎng)inux產(chǎn)品架構(gòu)中的軟肋。隨著Red Hat Enterprise Linux 4.0出現(xiàn),這個(gè)情況已經(jīng)改變了。RHEL 4 內(nèi)附的LDAP 服務(wù)器為OpenLDAP 2.2.13-2 版,OpenLDAP 2.x包括數(shù)個(gè)重要功能:
1. 支持LDAPv3 - OpenLDAP 2.0 除了其它改善外還支持SASL(SimpleAuthentication and Security Layer)、TLS(Transport Layer Security)以及SSL(Secure Sockets Layer)。LDAPv2 之后通訊協(xié)議很多的改變都是為了加強(qiáng)LDAP 的安全性。
2. 支持IPv6 - OpenLDAP 支持新一代的因特網(wǎng)通訊協(xié)議第6 版。
3. LDAP Over IPC - OpenLDAP 能夠使用IPC 在系統(tǒng)內(nèi)進(jìn)行通訊。這可以避免使用網(wǎng)絡(luò)通訊以增加安全性。
4. 使用新的應(yīng)用程序界面: 改善程序設(shè)計(jì)人員聯(lián)機(jī)及使用程序的方法。
本文將以Red Hat Enterprise Linux 4.0 為例,介紹在Linux平臺(tái)使用OpenLDAP上建立目錄服務(wù)器。
一、LDAP協(xié)議簡(jiǎn)介
LDAP(輕
量級(jí)目錄訪問(wèn)協(xié)議,Lightweight Directory Access
Protocol)是實(shí)現(xiàn)提供被稱為目錄服務(wù)的信息服務(wù)。目錄服務(wù)是一種特殊的數(shù)據(jù)庫(kù)系統(tǒng),其專門針對(duì)讀取,瀏覽和搜索操作進(jìn)行了特定的優(yōu)化。目錄一般用
來(lái)包含描
述性的,基于屬性的信息并支持精細(xì)復(fù)雜的過(guò)濾能力。目錄一般不支持通用數(shù)據(jù)庫(kù)針對(duì)大量更新操作操作需要的復(fù)雜的事務(wù)管理或回卷策略。而目錄服務(wù)的更新則一
般都非常簡(jiǎn)單。這種目錄可以存儲(chǔ)包括個(gè)人信息、web鏈結(jié)、jpeg圖像等各種信息。為了訪問(wèn)存儲(chǔ)在目錄中的信息,就需要使用運(yùn)行在TCP/IP之上的訪
問(wèn)協(xié)議—LDAP。
LDAP目錄中的信息是是按照樹(shù)型結(jié)構(gòu)組織,具體信息存儲(chǔ)在條目(entry)的數(shù)據(jù)結(jié)構(gòu)中。條目相當(dāng)于關(guān)系數(shù)據(jù)庫(kù)中表的記錄;條目是具有區(qū)別名
DN(Distinguished
Name)的屬性(Attribute),DN是用來(lái)引用條目的,DN相當(dāng)于關(guān)系數(shù)據(jù)庫(kù)表中的關(guān)鍵字(Primary
Key)。屬性由類型(Type)和一個(gè)或多個(gè)值(Values)組成,相當(dāng)于關(guān)系數(shù)據(jù)庫(kù)中的字段(Field)由字段名和數(shù)據(jù)類型組成,只是為了方便檢
索的需要,LDAP中的Type可以有多個(gè)Value,
而不是關(guān)系數(shù)據(jù)庫(kù)中為降低數(shù)據(jù)的冗余性要求實(shí)現(xiàn)的各個(gè)域必須是不相關(guān)的。LDAP中條目的組織一般按照地理位置
和組織關(guān)系進(jìn)行組織,非常的直觀。LDAP系統(tǒng)結(jié)構(gòu)圖見(jiàn)圖1.
圖1 LDAP系統(tǒng)結(jié)構(gòu)圖
LDAP的信息是以樹(shù)型結(jié)構(gòu)存儲(chǔ)的,在樹(shù)根一般定義國(guó)家(c=CN)或域名(dc=com),在其下則往往定義一個(gè)或多個(gè)組織
(organization)(o=Acme)或組織單元(organizational units)
(ou=People)。一個(gè)組織單元可能包含諸如所有雇員、 大樓內(nèi)的所有打印機(jī)等信息。
此外,LDAP支持對(duì)條目能夠和必須支持哪些屬性進(jìn)行控制,這是有一個(gè)特殊的稱為對(duì)
象類別(objectClass)的屬性來(lái)實(shí)現(xiàn)的。該屬性的值決定了該條目必須遵循的一些規(guī)則,其規(guī)定了該條目能夠及至少應(yīng)該包含哪些屬性。例
如:inetorgPerson對(duì)象類需要支持sn(surname)和cn(common
name)屬性,但也可以包含可選的如郵件,電話號(hào)碼等屬性。dn :一條記錄的位置;dc :一條記錄所屬區(qū)域;ou
:一條記錄所屬組織;cn/uid:一條記錄的名字/ID。OpenLdap是一個(gè)正在得到日益普遍應(yīng)用的開(kāi)源軟件,和LADP完全兼容。
二、安裝OpenLDAP服務(wù)器
如
果在系統(tǒng)安裝時(shí)已經(jīng)把安裝上了,那么我們就可以直接對(duì)OpenLDAP進(jìn)行配置使用了。否則,可以通過(guò)Rat Het Enterprise
Linux圖形界面下的“添加/刪除應(yīng)用程序”工具進(jìn)行安裝。具體方法是,選擇“主選單”→“系統(tǒng)設(shè)置”→“添加/刪除應(yīng)用程序”,在彈出的界面中選中
“網(wǎng)絡(luò)服務(wù)器”的“OpenLDAP-server”,單擊“更新”即可,見(jiàn)圖2。
圖2 安裝OpenLDAP 服務(wù)器軟件
如果你使用的是其他版本的Linux,那么通常要安裝以下軟件包:OpenLDAP、 OpenLDAP-servers、
OpenLDAP-clients、 OpenLDAP-devel
,OpenLDAP-2.0是必要套件,一定要先安裝;OpenLDAP-servers是服務(wù)器套件;OpenLDAP-clients是操作程序套
件;OpenLDAP-devel是開(kāi)發(fā)工具套件。
三、配置OpenLDAP 服務(wù)器
以RedHat Linux 4所為例字介紹OpenLDAP 服務(wù)器配置文件。主要文件見(jiàn)表1。
表1
1. 建立Linux用戶賬號(hào)
使用文本編輯建立一個(gè)文本文件,文件名稱myusers.list 內(nèi)容如下:
user1 123456
user2 123456
user3 123456
user4 123456
user5 123456
user6 123456
user7 123456
user8 123456
user9 123456
注意:第一個(gè)字段為使用者名稱;第二個(gè)字段為預(yù)設(shè)密碼,中間必須用空格隔開(kāi)。然后使用文本編輯建立另外一個(gè)文本文件,文件名稱add-users.sh內(nèi)容如下:
#!/bin/bash
for i in `awk '{print $1}' users.list `
do
useradd $i
grep "<$i>" users.list | awk '{print $2}' | passwd --stdin $i
done
建立Linux用戶賬號(hào):
#chmod 775 add-users.sh
#./add-users.sh
2.修改缺省配置文件:/etc/OpenLDAP/slapd.conf,請(qǐng)把藍(lán)色部分按照您的具體情況填寫。
database bdb
suffix "dc=myexample,dc=com" #一條記錄所屬區(qū)域#
rootdn "cn=Manager,dc=example,dc=com"
rootpw 1234567 #定義LDAP根管理員的密碼
3.將原有Linux 賬號(hào)轉(zhuǎn)為L(zhǎng)DIF 文件
原有Linux 服務(wù)器上有user1-user9 這些使用者賬號(hào),密碼均為123456;面便是轉(zhuǎn)換的步驟:
# cd /usr/share/OpenLDAP/migration #轉(zhuǎn)換文件的目錄#
# vi migrate_common.ph
$DEFAULT_MAIL_DOMAIN = "myexample.com";
Default base
$DEFAULT_BASE = "dc=myexample,dc=com";
# ./migrate_passwd.pl /etc/passwd > /worktmp/user.ldif
# ./migrate_group.pl /etc/group > /worktmp/group.ldif
4. 建立example.ldif,ou_people.ldif, ou_group.ldif三個(gè)文件
#cat example.ldif
dn: dc=example,dc=com
dc: example
objectClass: dcObject
objectClass: organizationalUnit
ou: example.com
#cat ou_people.ldif
dn: ou=people, dc=example, dc=com
objectclass: organizationalunit
ou: people
#cat ou_group.ldif
dn: ou=group, dc=example, dc=com
objectclass: organizationalunit
ou: group
5. 轉(zhuǎn)換原有Linux 賬號(hào)至OpenLDAP服務(wù)器上:
#slapadd -vl example.ldif
added: "dc=example,dc=com" (00000001)
#slapadd -vl ou_people.ldif
added: "ou=people,dc=example,dc=com" (00000002)
#slapadd -vl ou_group.ldif
added: "ou=group,dc=example,dc=com" (00000043)
#slapadd -vl user.ldif
#slapadd -vl group.ldif
四、啟動(dòng)OpenLDAP服務(wù)器
#chown ldap.ldap /var/lib/ldap/* #把/var/lib/ldap/目錄內(nèi)的檔案變更擁有者及群組為ldap。
然后可以通過(guò)Rat Het Enterprise Linux圖形界面下的選擇“主選單”→“系統(tǒng)設(shè)置”→“服務(wù)器設(shè)置”-“服務(wù)”,在彈出的界面中選中l(wèi)dap”,單擊“重新啟動(dòng)”即可,見(jiàn)圖3。
圖3 服務(wù)器啟動(dòng)界面
利用ldapsearch 指令可搜尋LDAP 服務(wù)器的數(shù)據(jù),若是可看到以下的數(shù)據(jù),代表整個(gè)設(shè)定正確無(wú)誤。
# ldapsearch -x -b "dc=example,dc=com"
………
# user9, Group, myexample.com
dn: cn=user9,ou=Group,dc=myexample,dc=com
objectClass: posixGroup
objectClass: top
cn: user9
userPassword:: e2NyeXB0fXg=
gidNumber: 508
………
五、配置Linux OpenLDAP客戶端
在客戶端執(zhí)行authconfig-gtk命令,進(jìn)入認(rèn)證配置界面,進(jìn)入圖4所示的界面中配置LDAP服務(wù)器的信息。在LDAP 服務(wù)器處 指定 LDAP 服務(wù)器的 IP 地址。
圖4 添加OpenLDAP服務(wù)器IP地址
打開(kāi) /etc/ldap.conf 文件,下面是一些用于配置的關(guān)鍵指令。
到此為止我們已經(jīng)配置完成Liunx OpenLDAP目錄服務(wù)器、客戶端。
posted on 2009-11-26 15:10 鍵盤動(dòng)物 閱讀(320) 評(píng)論(1) 編輯 收藏