1. 程式人生 > >linux雜談(十一):LDAP伺服器的搭建

linux雜談(十一):LDAP伺服器的搭建

1.LDAP簡介

     今天我們來介紹LDAP伺服器的搭建和客戶端的訪問,但是主要的問題在前者。首先我們要知道什麼是LDAP。

     在日常交談中,你可能會聽到有些人這麼說:"我們要把那些東西存在LDAP中嗎?",或者"從LDAP資料庫中取出那些資料!",又或者"我們怎麼把LDAP和關係型資料庫整合在一起?"。嚴格地說,LDAP根本不是資料庫而是用來訪問儲存在資訊目錄(也就是LDAP目錄)中的資訊的協議。更為確切和正式的說法應該是象這樣的:"通過使用LDAP,可以在資訊目錄的正確位置讀取(或儲存)資料"。

     LDAP的優點:

(1)跨平臺和標準協議
(2)安裝簡單,易於維護,和關係形資料庫相比更易維護。

    LDAP所要儲存和共享的東西一般是不經常改變的,例如我們現在要把公司員工的使用者密碼存放在LDAP伺服器上,這樣我們在任何一臺只要能夠訪問LDAP伺服器的機子上都可以使用指定的使用者進行登入,而不是像以前一樣只能在每臺機子的本地使用者進行登入了。是不是更加的方便了。那麼我們現在就著手來搭建一下LDAP伺服器。

2.搭建LDAP伺服器


(1)準備工作

我們需要兩臺主機,可以一個是真機,另外一個是虛擬機器,只要他們在同一個網段能夠通訊就可以了。
兩個主機的版本號都為redhat6.4(其他的版本可能配置方法與此有些出入)

(2)開始配置

1.第一個是服務端,我們首先要安裝LDAP伺服器:


2.把配置檔案的模板拷貝到配置目錄上:


3.刪除掉沒有用的配置檔案lapd.conf


4.修改配置檔案許可權和使用者:


5.編輯配置檔案,修改一下幾處:
(1)TLS開頭加密的那幾行註釋掉;

(2)這個部分註釋掉:

(3)這些做如下修改:

要非常注意的是:rootpw一定要在這行的開頭,否則是不生效的!!!

(4)然後重啟sldap服務:


6.雖然服務已經配置好了,但是我們還沒有建立要共享的使用者,下面我們用指令碼建立100個使用者:


執行使用者建立過程,但是因為是shell編寫的指令碼,執行過程會比較緩慢,耐性等等,你可以在/etc/passwd檔案中檢視建立進度。

我們可以看到100個新使用者已經建立成功了:


但是有一個問題,這些使用者的書寫格式是無法直接匯入到LDAP伺服器上的,所以我們一定要採用格式轉換工具來轉變格式:
migrationtools是一個格式轉換工具,我們先來安裝它:


安裝完以後我們跳轉到它的目錄下,發現有很多可執行指令碼用來約束格式的:


在migrate_common.ph中修改一下幾項:


然後把基本的匯入模型進行設定:分為兩個部分,產生base.ldif和修改base.ldif:

因為我們只設置它的使用者和組,所有隻留下這兩個部分,其他的全部刪除:

把base.ldif轉移到/ldapuser目錄下:


下面這兩個操作是最關鍵的,我們要把共享的使用者和組的資訊從passwd和group中截取出來:


然後把這些使用者和組的資訊轉換成可以放到LDAP伺服器上的格式:
轉換使用者:

轉換組:


先匯入基本模板,然後匯入使用者和組資訊:





完成後重啟slapd服務並重新整理火牆。


至此,沒有安全金鑰的LDAP服務端就配置完成了,我們使用另外一臺機子的服務端對其進行訪問,並且切換使用者:


寫入服務端的IP:


好了!!最激動人心的時候到了,我們切換使用者到myldapuser1下,這個使用者在客戶端的機子上是沒有的,但是現在卻可以登入。


說明服務端的使用者共享是成功的,可以被其他機子訪問。而且最大的優點是:我們可以只更改服務端的使用者和組資訊就可以完成對其他客戶端的影響了。非常的實用方便。這個只是LDAP服務的一個功能。以後遇到了會更深入的瞭解。

注:這個服務是RHCA階段的配置,如果感覺第一次比較吃力的話,多配幾次,總結成文件,對LDAP的瞭解就會加深。