openldap安裝

前言:

在安裝使用、openldap的過程中踩過很多坑,有的是自己沒理解明白,有的是別人表述不明確,此次就從安裝開始,簡單權限設置、以及雙主,後面包括與confluence、jira,gitlab的關聯~

一、安裝openldap

此前編譯安裝過,踩過不少坑,最後還是選擇用yum安裝來的方便。

`yum install openldap openldap-servers openldap-clients openldap-devel compat-openldap -y`

openldap後端的數據庫是Berkeley DB,所以這個也得安裝,當時編譯安裝時,對這個數據庫的版本有恨嚴格的要求,坑很大。。

`yum install db4 db4-utils`


雖說openldap已經提供了足夠的命令來創建,搜索,修改數據,但是依然不及web頁面顯示來的直觀,此處我們使用phpldapadmin。

```

wget https://jaist.dl.sourceforge.net/project/phpldapadmin/phpldapadmin-php5/1.2.3/phpldapadmin-1.2.3.zip


unzip phpldapadmin-1.2.3.zip

cp -R phpldapadmin-1.2.3 /var/www/html/phpldapadmin

cd /cd/www/html/phpldapadmin/config

cp config.php.example config.php

```

和大多數php應用一樣,得自己複製出一個配置文件。記得修改php的timezone喲。這也算是一個小坑。


`

yum install php php-ldap php-fpm nginx

sed -i '/; date.timezone/a date.timezone =Asia/Shanghai' /etc/php.ini `

下面是我使用的nginx的配置文件

```

vim /etc/nginx/conf/phpldapadmin.conf

server{

   listen      80;

   server_name  ldap.xxx.com;


   location / {

       index index.html index.php;

       root /var/www/html/phpldapadmin;


   if (!-e $request_filename) {

           rewrite ^/(.*)  /index.php?$1 last;

       }

   }



   location ~ \.php$ {

       root /var/www/html/phpldapadmin;

       fastcgi_pass  127.0.0.1:9000;

       fastcgi_index  index.php;

       fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;

       include        fastcgi_params;

   }


}

```

接下來就啓動nginx、啓動php-fpm

```

service nginx start

service php-fpm start

```


繼續配置openldap。網上有好多教程都是配置slapd.conf 文件但是,yum安裝的默認/etc/openldap/下是沒有這個文件的,因爲新版的吧一個文件分成了多個。不習慣的可以繼續配置原來的slapd.conf文件,然後通過命令將其變成slapd.d/目錄下的多個配置文件。


首先生成管理員密碼。

slappasswd

輸入兩次得到一個密碼,我的這個密碼是1234

{SSHA}7Wi/7NzFL/b6y+a7jZsDos5ax3HK0gUZ

修改數據庫配置文件,設置域名,密碼等

```

vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}bdb.ldif


olcSuffix: dc=xxx,dc=com

#這個主要設置目錄樹根的域名。

oclRootDN: cn=admin,dc=xxx,dc=com

#這個是設置管理員dn,xxx可以換成自己的域名~


#然後在這歌配置文件的最後一行加入設置管理員密碼的條目~

olcRootPW: {SSHA}7Wi/7NzFL/b6y+a7jZsDos5ax3HK0gUZ

```


2、指定監控權限

```

vim /etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif

dn.base="cn=admin,dc=xxx,dc=com"

#修改其末日域名

```

3、設置數據庫緩存

```

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

chown -R ldap:ldap /var/lib/ldap


#測試配置文件是否有錯,得到`testing succeeded`表示沒問題

slaptest -u

```

4、啓動openldap

`service slapd start`


此時就可以訪問phpldapadmin。web頁面了

用戶名:cn=admin,dc=ldap,dc=com

密碼:1234


不過此處還有一坑,web頁面會有一個提示,然後沒有目錄樹的根,原因是根節點還沒有被創建。操作如下:

```

vim base.ldif

#以下爲base.ldif內的內容

dn: dc=xxx,dc=com

o: ldap

objectclass: dcObject

objectclass: organization

```

然後加入用戶

`ldapmodify -x -D "cn=admin,dc=luojilab,dc=com" -W -f base.ldif`

如果是centos7 加一個-a參數,不然老報錯。

如果提示`adding new entry "dc=xxx,dc=com"`就表示成功了~




次時再訪問web頁面就沒問題啦~~



倒入schema

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif 

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif 

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章