ldap 安裝

一、安裝步驟
1:配置yum源
   掛着盤鏡像時用到: 這裏不做解釋;(yum clean all && yum makecache)
2:安裝OpenLDAP組件
                1)安裝OpenLDAP組件命令如下:
[root@gitea ~]# yum install openldap openldap-servers openldap-clients openldap-devel compat-openldap -y
compat-openldap-2.3.43-2.el6.x86_64
openldap-clients-2.4.40-16.el6.x86_64
openldap-2.4.40-16.el6.x86_64
openldap-devel-2.4.40-16.el6.x86_64
openldap-servers-2.4.40-16.el6.x86_64
   2)初始化OpenLDAP配置
[root@gitea ~]# cp /usr/share/openldap-servers/DB_CONFIG.example  /var/lib/ldap/DB_CONFIG
[root@gitea ~]# cp /usr/share/openldap-servers/slapd.conf.obsolete  /etc/openldap/slapd.conf
[root@gitea ~]# chown -R ldap.ldap /etc/openldap/
[root@gitea ~]# chown -R ldap.ldap /var/lib/ldap
   3)啓動LDAP進程slapd(調試程序)
[root@gitea ~]# service slapd restart
Stopping slapd:                                            [FAILED]
Starting slapd:                                            [  OK  ]
  4) 查看OpenLDAP默認監督
[root@gitea ~]# netstat -ntplu|grep -i :389       
tcp        0      0 0.0.0.0:389                 0.0.0.0:*                   LISTEN      28137/slapd        
tcp        0      0 :::389                      :::*                        LISTEN      28137/slapd
 5) 查看OpenLDAP進程狀態
[root@gitea ~]# ps aux|grep slapd |grep -v grep
ldap     28137  0.0  1.5 536828 62924 ?        Ssl  11:33   0:00 /usr/sbin/slapd -h  ldap:/// ldapi:/// -u ldap


二、OpenLDAP配置

    1.配置文件關鍵路徑:
   /etc/openldap/slapd.conf(OpenLDAP住配置文件、記錄根域名名稱、管理員名稱、密碼、日誌、權限等相關信息)
   /var/lib/ldap/* (OpenLDAP  數據文件存儲位置,可以根據需求進行調整)
   /usr/share/openldap-servers/slapd.conf.obsolete (模板配置文件)
   /usr/share/openldap-servers/DB_CONFIG.example (模板數據配置文件schema路徑)
  /etc/openldap/schema/* (OpenLDAP schema規範存放位置)

OpenLDAP監聽的端口有以下兩個.
  默認監聽端口:389 (明文數據傳輸)
  加密監聽端口:636 (密文數據傳輸)
  2.slapd.conf配置文件
   OpendLDAP 主配置文件爲/etc/openldap/slapd.conf.此文件默認不存在,需要負責安裝OpenLDAP軟件包安裝所產生的配置文件模板並重命名爲slapd.conf文件;
  1)獲取openldap-servers軟件包生產的文件
[root@gitea ~]# rpm -ql openldap-servers |egrep -i '(slapd\.conf\.*|DB_CONFIG.example)'
/etc/openldap/slapd.conf
/etc/openldap/slapd.conf.bak
/usr/share/man/man5/slapd.conf.5.gz
/usr/share/openldap-servers/DB_CONFIG.example
/usr/share/openldap-servers/slapd.conf.obsolete
2)軟件包所產生的文件的用途
/usr/share/openldap-servers/slapd.conf.obsolete 爲OpenLDAP配置文件模板
/usr/share/openldap-servers/DB_CONFIG.example 爲OpenLDAP數據庫配置文件模板
要配置OpendLDAP服務端,需要將如上配置文件模板負責到/etc/openldap/目錄下並命名爲slapd.conf,同時將數據庫配置文件模板複製到/var/lib/ldap/目錄中並將其命名爲DB_CONFIG,且/var/lib/ldap/目錄權限所有主(owner),所屬組(group)必須爲ladp用戶可讀寫,否則會在加載slapd進程時顯示權限警告
3) slapd.conf配置文件參數
/etc/openldap/slapd.conf 爲OpenLDAP主配置文件,以#號開頭的爲註釋說明
include         /etc/openldap/schema/corba.schema
include         /etc/openldap/schema/core.schema
include         /etc/openldap/schema/cosine.schema
include         /etc/openldap/schema/duaconf.schema
include         /etc/openldap/schema/dyngroup.schema

OpenLDAP服務允許連接的客戶端版本。
allow  bind_v2
OpenLDAP進程啓動時,pid文件存放路徑
pidfile /var/run/openldap/slapd.pid
OpenLDAP 參數文件存放的路徑
argsfile /var/run/openldap/slapd.args
OpenLDAP 指定需要加載額外的模塊
moduleload ppolicy.la
OpenLDAP模塊文件存放的路徑
modulepath  /usr/lib/openldap               //32bit的模塊文件路徑
modulepath  /usr/lib64/openldap           //64bit的模塊文件路徑

指定OpenLDAP數據庫類型
OpendLDAP服務後端存儲數據庫引擎支持的數據庫類型有mysql  db2 oracle等關係數據庫,默認爲bdb數據庫。
database  dbd

指定OpenLDAP服務器域名(DN)
指定要搜索或查詢OpenLDAP目錄樹的後綴名稱等同於AD域名
suffix     "dc=example,dc=com"
指定OpenLDAP服務器管理信息
rootdn  "cn=Manager,dc=example,dc=com"
指定OpenLDAP服務管理員密碼
root  gdy@123     #文明添加,不建議使用
rootpw         {crypt}ijFYNcSNctBYg

指定OpenLDAP數據庫文件的存放目錄
directory    /var/lib/ldap
創建OpendLDAP索引
index   objectClass                                    eq,pres
index   ou,cn,mail,surname,givename        eq,pres,sub
index   uidNumber,gidNumber,loginShell   eq,pres


三、修改OpenLDAP配置
1:備份默認數據庫文件
[root@gitea openldap]# \cp /etc/openldap/slapd.d   /tmp/slapd.d.bak/ -fr
2: 查看OpendLDAP是否開啓SSL加密功能
[root@gitea openldap]# cat /etc/sysconfig/ldap |grep -v -E "^$|^#"
SLAPD_LDAP=yes
SLAPD_LDAPI=yes
SLAPD_LDAPS=no
此處未開啓SSL,如果開啓SSL功能,可以再使用SLAPD_LDAPS=yes,或者使用SLAPD_URLS進行指導即可
例如:SLAPD_URLS=ldaps://ldap.deppon.com
3: OpenLDAP主配置文件配置
  1) schema文件的引入
include                /etc/openldap/schema/samba.schema

2)  創建OpenLDAP的管理員密碼
通過slappasswd命令創建密碼串,然後將密碼串負責到rootpw即可

4: slaptest 檢測、生成數據庫
 [root@gitea openldap]# slaptest -f /etc/openldap/slapd.conf
如果配置文件存在語法錯誤,通過slaptest -u 命令有相應的提示,根據提示對slapd.conf配置文件進行調整即可;
通過slapd.conf配置文件生成數據庫
[root@gitea openldap]# slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d
5:OpenLDAP日誌配置
1)查看日誌級別
slapd -d ?
2)  OpenLDAP服務日誌設置
通過修改rsyslog配置文件, 在文件中添加:local4*   /var/log/slapd.log  
[root@gitea openldap]# touch /var/log/slapd.log
[root@gitea openldap]# chown ldap.ldap /var/log/slapd.log
[root@gitea openldap]# chmod 755 /var/log/slapd
root@gitea openldap]# chown ldap:ldap /var/log/slapd/
 
修改日誌文件,使其加載OpenLDAP參數
[root@gitea openldap]# sed -i "/local4.*/d"  /etc/rsyslog.conf
[root@gitea openldap]# cat >> /etc/rsyslog.conf  << EOF
> local4.*                  /var/log/slapd/slapd.log
> EOF
[root@gitea openldap]# cat /etc/openldap/slapd.conf  |grep -i loglevel

重新加載rsyslog使其配置生效
[root@gitea openldap]# service rsyslog restart
Shutting down system logger:                               [  OK  ]
Starting system logger:                                    [  OK  ]

6:通過cn=config配置OpenLDAP日誌
1)查看數據庫配合文件日誌級別信息
[root@gitea slapd.d]# cat cn\=config.ldif  |grep olcLogLevel
olcLogLevel: 0

四、啓動slapd服務
service slapd restart  

五、yum安裝migrationtools
1)yum install migrationtools -y
vim  /usr/share/migrationtools/migrate_common.ph
$DEFAULT_MAIL_DOMAIN = "ouldap.com";  
 # Default base  
$DEFAULT_BASE = "dc=ouldap,dc=com";  
2)生成base.ldif
/usr/share/migrationtools/migrate_base.pl >base.ldif

3)添加base.ldif到ldap
ldapadd -x -D "cn=Manager,dc=ouldap,dc=com" -W -f ./base.ldif  
4)檢查ldapadd是否成功
ldapsearch -x -D "cn=Manager,dc=ouldap,dc=com" -b "ou=Aliases,dc=ouldap,dc=com"  -W  'uid=zhijie'

五、yum安裝httpd,php及PhpLdapAdmin
1)yum install httpd phpldapadmin -y
    yum install   php php-mbstring php-pear
2)配置/etc/httpd/conf.d/phpldapadmin.conf允許從遠程訪問

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs  
Alias /ldapadmin /usr/share/phpldapadmin/htdocs  
 
<Directory /usr/share/phpldapadmin/htdocs>  
  Order Deny,Allow  
  Allow from all  
</Directory></span>

3)修改/etc/phpldapadmin/config.php

$servers->setValue('login','attr','dn');  
// $servers->setValue('login','attr','uid');

4)httpd.conf配置 使Apache支持php開發環境

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

5)在DirectoryIndex 後面添加PHP類型的頁面
 DirectoryIndex index.php index.html index.html.var
6)虛擬主機配置
vim  /etc/httpd/conf/httpd.conf
<VirtualHost *:80>
    ServerAdmin myldap.ouldap.com
    DocumentRoot /usr/share/phpldapadmin/htdocs
    ServerName myldap.ouldap.com
</VirtualHost>
service httpd status  


問題:
        1:如果出現php程序無法調用OpenLDAP相關的模塊,造成所安裝的PHP程序錯誤,不支持連接OpenLDAP接口
  安裝yum install  php-ldap  重新apache
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章