鉴于当前的EsgynDB版本(2.4及更早)的数据库用户/密码使用LDAP来存储管理,对于LDAP的安装肯定是安装过程中不可或缺的一部分。目前常用的开源的LDAP软件有OpenLDAP、FreeIPA。其中,FreeIPA包含的内容比较多,它集成了LDAP、kerberos、tomcat等多个组件,而OpenLDAP就是比较纯粹的LDAP软件。
关于FreeIPA的安装与配置,可以参考我之前的博客:https://blog.csdn.net/Post_Yuan/article/details/78204957
关于OpenLDAP的安装与配置,可以参考另外一篇博客:https://blog.csdn.net/Post_Yuan/article/details/53129735,不过这篇文章是基于CentOS6的环境安装,在CentOS7上会有所不同。本文主要详细介绍如何在CentOS7上安装OpenLDAP。主要步骤如下,
1.安装openldap及php相关包
yum -y install openldap openldap-* migrationtools php php* httpd
2 生成ldap管理员密码
slappasswd -s traf123
3 修改olcDatabase={2}hdb.ldif文件
vi /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif
//修改如下
增加一行:
olcRootPW: {SSHA}o1bqtofUr95dkEDdXbAMAVPFSnNDU3+2
然后修改域信息:
olcSuffix: dc=esgyn,dc=com
olcRootDN: cn=Manager,dc=esgyn,dc=com
4 修改olcDatabase={1}monitor.ldif文件
vi /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=esgyn,dc=com” read by * none
5 验证LDAP基本配置
slaptest -u
6 启动OpenLDAP服务
systemctl enable slapd
systemctl start slapd
systemctl status slapd
7 查看OpenLDAP默认端口是否打开
netstat -antup | grep 389
8 配置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/
9 导入基本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
10 修改migrate_common.ph文件
vi /usr/share/migrationtools/migrate_common.ph
//修改如下
$DEFAULT_MAIL_DOMAIN = “esgyn.com”;
$DEFAULT_BASE = “dc=esgyn,dc=com”;
$EXTENDED_SCHEMA = 1;
11 添加用户及用户组
/usr/share/migrationtools/migrate_base.pl >base.ldif
ldapadd -x -w "traf123" -D "cn=Manager,dc=esgyn,dc=com" -f /root/base.ldif
ldapsearch -x -w "traf123" -D "cn=Manager,dc=esgyn,dc=com" -b "ou=People,dc=esgyn,dc=com"
12 下载phpldapadmin
wget http://ncu.dl.sourceforge.net/project/phpldapadmin/phpldapadmin-php5/1.2.2/phpldapadmin-1.2.2.tgz
13 配置phpldapadmin
tar zxvf phpldapadmin-1.2.2.tgz
cp -r phpldapadmin-1.2.2 /var/www/html/
cd /var/www/html/
mv phpldapadmin-1.2.2 phpldapadmin
cd phpldapadmin/config/
cp config.php.example config.php
//编辑config.php
vi config.php
$servers = new Datastore();
$servers->newServer('ldap_pla');
$servers->setValue('server','name','My LDAP Server');
$servers->setValue('server','host','192.168.1.9'); --修改IP
$servers->setValue('server','port',389);
$servers->setValue('server','base',array('dc=esgyn,dc=com')); --修改
$servers->setValue('login','auth_type','session'); --修改为session
$servers->setValue('login','bind_id','cn=Manager,dc=esgyn,dc=com'); --修改
$servers->setValue('login','bind_pass','traf123'); --修改
$servers->setValue('server','tls',false);
14 启动httpd,登陆phpldapadmin,在浏览器输入(记得关闭防火墙)
service httpd restart
http://192.168.1.9/phpldapadmin/htdocs/index.php
好了,现在我们可以通过以上界面创建用户和组了。。。
登录账号:cn=Manager,dc=esgyn,dc=com,登录密码:traf123