CentOS6上安装配置OpenLDAP

openldap安装配置

1,在服务器上安装openldap。

yum install openldap openldap-* -y

2,生成ldap密码,并记录。这里不知道用了什么算法,每次生成密码不同,都能用。

slappasswd -s 123456


3,复制配置文件并修改

cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf

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

默认配置情况如下:


修改access to *与database bdb两项的dc为自己的域名。

取消rootpw的注释,并将第二步生成的密码复制进去。注意rootpw需顶格写,前面有空格会导致输入正确的密码也不能认证成功。


3,删除自带配置并重新生成。

rm –rf /etc/openldap/slapd.d/*

slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/

4,检查新生成的文件是否与配置一致。

配置文件中是olcSuffix参数。

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


5,修改文件权限。

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

chown -R ldap:ldap /etc/openldap/

6,测试。

slaptest -f /etc/openldap/slapd.conf


7,启动ldap服务。

/etc/init.d/slapd start

openldap数据导入

ldif文件好像是个数据文件,类似mysqldump出来的*.sql文件,里面是数据。下面的操作是创建数据文件,然后把数据文件里的内容导入到ldap中。

8,创建root.ldif文件,里面是根信息,内容如下:

dn: dc=a,dc=com

o: ldap

dc: a

objectclass: dcObject

objectclass: organization

9,导入根信息。

ldapadd -f root.ldif -x -D cn=Manager,dc=a,dc=com -W


安装配置ldap管理工具phpldapadmin

10,安装phpldapadmin

rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

yum install –enablerepo=remi –enablerepo=remi-php56 php php-opcache php-devel php-mbstring php-mcrypt php-mysqlnd php-phpunit-PHPUnit php-pecl-xdebug php-pecl-xhprof php-ldap -y

yum install –enablerepo=remi –enablerepo=remi-php56 httpd php php-ldap php-gd php-mbstring php-pear php-bcmath php-xml -y

yum –enablerepo=epel -y install phpldapadmin

11,修改php-ldapadmin配置文件,允许指定网段访问。如不修改,访问时会有此提示:


配置文件 vim /etc/httpd/conf.d/phpldapadmin.conf

默认情况如下:


增加自己的IP段


12,修改phpldapadmin使用dc登录

vim /etc/phpldapadmin/config.php

将下面一行注释掉

//$servers->setValue(‘login’,’attr’,’uid’);

添加下面一行

$servers->setValue(‘login’,’attr’,’dn’);

重启httpd

service httpd restart

登陆后即可添加OU/用户组/用户等。

本文链接地址: https://danteng.org/centos-6-openldap-install-and-initiate/