openldap-server的数据必须用原配的Berkeley DB,不能使用mysql作为后端数据库,openldap的操作语法比较复杂,推荐使用phpldapadmin管理配置,同时也可以用windows下ldapadmin程序进行配置。
1.初始化准备系统CentOS7 64位
配置yum源
关闭selinux和防火墙
sed -i ‘/SELINUX/s/enforcing/disabled/’ /etc/selinux/config && setenforce 0&& systemctl disable firewalld.service && systemctl stop firewalld.service && shutdown -r now环境初始化完毕后,我们就可以安装OpenLDAP。 2.安装OpenLDAP
使用如下命令安装OpenLDAP:
yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel migrationtools
查看OpenLDAP版本,使用如下命令:
OpenLDAP安装完毕后,接下来我们开始配置OpenLDAP。
OpenLDAP配置比较复杂牵涉到的内容比较多,接下来我们一步一步对其相关的配置进行介绍。
注意:从OpenLDAP2.4.23版本开始所有配置数据都保存在/etc/openldap/slapd.d/中,建议不再使用slapd.conf作为配置文件。
设置OpenLDAP的管理员密码:
slappasswd -s ******上述加密后的字段保存下,等会我们在配置文件中会使用到。 3.2.修改olcDatabase={2}hdb.ldif文件 Vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif 修改olcDatabase={2}hdb.ldif文件,对于该文件增加一行 olcRootPW: {SSHA}o1bqtofUr95dkEDdXbAMAVPFSnNDU3+2,然后修改域信息: olcSuffix: dc=hbgd,dc=com olcRootDN: cn=Manager,dc=hbgd,dc=com
注意:其中cn=Manager中的Manager表示OpenLDAP管理员的用户名,而olcRootPW表示OpenLDAP管理员的密码。 3.3.修改olcDatabase={1}monitor.ldif文件 修改olcDatabase={1}monitor.ldif文件,如下: vim /etc/openldap/slapd.d/cn=config/olcDatabase\=\{1\}monitor.ldif olcAccess: {0}to * by dn.base=”gidNumber=0+uidNumber=0,cn=peercred,cn=extern al,cn=auth” read by dn.base=”cn=Manager,dc=hbgd,dc=com” read by * none
注意:该修改中的dn.base是修改OpenLDAP的管理员的相关信息的。
验证OpenLDAP的基本配置,使用如下命令: slaptest -u
通过上图,我们可以很明显的看出OpenLDAP的基本配置是没有问题。
启动OpenLDAP服务,使用如下命令:
OpenLDAP默认监听的端口是389,下面我们来看下是不是389端口,如下: netstat -antup | grep 389
通过上图,我们可以很明显的看出OpenLDAP确实是监听的是389端口。 3.4.配置OpenLDAP数据库
OpenLDAP默认使用的数据库是BerkeleyDB,现在来开始配置OpenLDAP数据库,使用如下命令:
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown ldap:ldap -R /var/lib/ldap chmod 700 -R /var/lib/ldap ll /var/lib/ldap/注意:/var/lib/ldap/就是BerkeleyDB数据库默认存储的路径。
3.5.导入基本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 3.6.修改migrate_common.ph文件migrate_common.ph文件主要是用于生成ldif文件使用,修改migrate_common.ph文件,如下:
vim /usr/share/migrationtools/migrate_common.ph +71 $DEFAULT_MAIL_DOMAIN = “hbgd.com”; $DEFAULT_BASE = “dc=hbgd,dc=com”; $EXTENDED_SCHEMA = 1;