ldap主备搭建

屈晨
2023-12-01
172.20.101.1101234567890{SSHA}0czCEpE4oFSN5Xunh4nkUOwsNzlmPr0L3
172.20.101.1111234567890{SSHA}GLwXk3B4ZKD0RzIwrchi119Kv2ZhH9T+1

主环境搭建
一、准备环境
1、关闭selinux firefalld
setenforce 0
systemctl stop firewalld.service
systemctl disable firewalld.service
二、openldap搭建
1、安装ldap服务器和客户端,migrationtools工具包
yum install -y openldap-servers openldap-clients migrationtools

2、设置openldap管理员密码
slappasswd
然后根据提示输入密码:
New password: 1234567890
Re-enter new password: 1234567890
会返回加密的密码字符串,保存好这个字符串
{SSHA}0czCEpE4oFSN5Xunh4nkUOwsNzlmPr0L3

3、查看安装了哪些文件(如果熟悉目录结构可以忽略)
rpm -ql openldap
rpm -ql openldap-servers

4、修改配置:
vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif
找到olcSuffix,修改为你的dc,如:
olcSuffix: dc=mypaas,dc=com
下一行olcRootDN,修改为你的用户名,如:
olcRootDN: cn=Manager,dc=mypaas,dc=com
在文件末尾添加一行,设置刚才的密码:
olcRootPW:{SSHA}0czCEpE4oFSN5Xunh4nkUOwsNzlmPr0L3

5、更改监控认证配置
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=mypass,dc=com” read by * none

6、设置DB Cache
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/

7、测试
slaptest -u
末尾出现configfile testing successed 说明成功了

8、启动openldap和开机启动
systemctl start slapd.service
systemctl enable slapd.service

9、导入模板
ls /etc/openldap/schema/*.ldif | xargs -I {} sudo ldapadd -Y EXTERNAL -H ldapi:/// -f {}

10、修改slapd.conf
11、同步设置:
systemctl stop slaps

rm -rf /etc/openldap/slapd/*
slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/ ##出现config file testing syccessded表示成功
chown -R ldap.ldap /etc/openldap/certs /etc/openldap/ldap.conf /etc/openldap/schema /etc/openldap/slapd.conf /etc/openldap/slapd.d/
chown -R ldap.ldap /var/lib/ldap
Systemctl start slapd

12、一些必须的组设置和调优设置
我们专门做了一个soft目录,将.ldif放在这里
[root@ldap-master-101-110 soft]# ll /etc/openldap/soft/
total 24
-rw-r–r-- 1 root root 437 Apr 22 10:53 base.ldif
-rw-r–r-- 1 root root 82 Apr 22 11:18 b.ldif
-rw-r–r-- 1 root root 240 Apr 22 13:25 disable_anon.ldif
-rw-r–r-- 1 root root 142 Apr 22 10:47 group.ldif
-rw-r–r-- 1 root root 409 Apr 22 11:14 pwd.ldif

压缩文件包含上面ls -l看到的文件

三、安装web管理服务
1、安装httpd
yum install http -y

2、修改配置文件httpd.conf
vim /etc/httpd/conf/httpd.conf
找到AllowOverride一行,修改none为all
如果想修改端口号,修改Listen 80一行

3、启动服务,测试页面
systemctl start httpd.service
systemctl enable httpd.service
curl http://127.0.0.1/

4、安装phpldapadmin
yum install phpldapadmin

(如果找不到软件包,重新设置一下yum源)
yum localinstall http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

5、修改配置文件
vim /etc/phpldapadmin/config.php

找到并取消下面几行的注释:
$servers->setValue(‘server’,’host’,’127.0.0.1’);
$servers->setValue(‘server’,’port’,389);
$servers->setValue(‘server’,’base’,array(‘dc=mypaas,dc=com’));
(array里加上openldap配置文件中设置的olcSuffix)
$servers->setValue(‘login’,’auth_type’,’session’);
KaTeX parse error: Expected 'EOF', got '#' at position 51: …n’); 把它的下一行注释掉 #̲servers->setValue(‘login’,’attr’,’uid’);

6、修改访问配置文件,允许任意ip访问

[root@ldap-master-101-110 openldap]# vim /etc/httpd/conf.d/phpldapadmin.conf

Web-based tool for managing LDAP servers

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs

<Directory /usr/share/phpldapadmin/htdocs>

7、创建基础目录
在/etc/openldap目录下添加base.ldif文件

cd /etc/openldap/
vim base.ldif
在文件中添加以下内容

dn: dc=mypaas,dc=com
o: ldap
objectclass: dcObject
objectclass: organization
dc: mypaas
(dc 修改为你自己的内容)

8、重启httpd服务

systemctl restart httpd.service

9、访问web管理端
访问 http://ip/phpldapadmin
登陆用户名:cn=Manager,dc=mypaas,dc=com

备环境搭建

一、准备环境
1、关闭selinux firefalld
setenforce 0
systemctl stop firewalld.service
systemctl disable firewalld.service
二、openldap搭建
1、安装ldap服务器和客户端,migrationtools工具包
yum install -y openldap-servers openldap-clients migrationtools

2、设置openldap管理员密码
slappasswd
然后根据提示输入密码:
New password: 1234567890
Re-enter new password: 1234567890
会返回加密的密码字符串,保存好这个字符串
{SSHA}GLwXk3B4ZKD0RzIwrchi119Kv2ZhH9T+1

3、查看安装了哪些文件(如果熟悉目录结构可以忽略)
rpm -ql openldap
rpm -ql openldap-servers

4、修改配置:
vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif
找到olcSuffix,修改为你的dc,如:
olcSuffix: dc=mypaas,dc=com
下一行olcRootDN,修改为你的用户名,如:
olcRootDN: cn=Manager,dc=mypaas,dc=com
在文件末尾添加一行,设置刚才的密码:
olcRootPW:{SSHA}GLwXk3B4ZKD0RzIwrchi119Kv2ZhH9T+1

5、更改监控认证配置
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=mypass,dc=com” read by * none

6、设置DB Cache
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/

7、测试
slaptest -u
末尾出现configfile testing successed 说明成功了

8、启动openldap和开机启动
systemctl start slapd.service
systemctl enable slapd.service

9、导入模板
ls /etc/openldap/schema/*.ldif | xargs -I {} sudo ldapadd -Y EXTERNAL -H ldapi:/// -f {}

10、修改slapd.conf
ldapadd -f base.ldif -x -D cn=Manager,dc=mypaas,dc=com –W
11、同步设置:
systemctl stop slaps

rm -rf /etc/openldap/slapd/*
slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/ ##出现config file testing syccessded表示成功
chown -R ldap.ldap /etc/openldap/certs /etc/openldap/ldap.conf /etc/openldap/schema /etc/openldap/slapd.conf /etc/openldap/slapd.d/
chown -R ldap.ldap /var/lib/ldap
Systemctl start slapd

12、一些必须的组设置和调优设置
我们专门做了一个soft目录,将.ldif放在这里
[root@ldap-master-101-110 soft]# ll /etc/openldap/soft/
total 24
-rw-r–r-- 1 root root 437 Apr 22 10:53 base.ldif
-rw-r–r-- 1 root root 82 Apr 22 11:18 b.ldif
-rw-r–r-- 1 root root 240 Apr 22 13:25 disable_anon.ldif
-rw-r–r-- 1 root root 142 Apr 22 10:47 group.ldif
-rw-r–r-- 1 root root 409 Apr 22 11:14 pwd.ldif

压缩文件包含上面ls -l看到的文件
ldapadd -f base.ldif -x -D cn=Manager,dc=mypaas,dc=com –W
————————————————————————————————————————————————————

检查是否同步成功:
在主ldap上创建一个test.wu的用户,在备上查看是否有此用户的存在
在主备上使用一下命令查看:
ldapsearch -x -D “cn=ldap,dc=ptmind,dc=com” -b “dc=ptmind,dc=com” -W | grep dn
or
ldapsearch -x -D “cn=ldap,dc=ptmind,dc=com” -b “dc=ptmind,dc=com” -W | grep cn=test.wu

————————————————————————————————————————————————————
ldap迁移
1、首先根据上面的步骤建立好主备两台ldap服务器
2、测试同步是否能成功
3、迁移数据库
a、备份数据库:
ldapsearch -x -D “cn=ldap,dc=ptmind,dc=com” -W -b “dc=ptmind,dc=com” -LLL -H ldap:/// >ldapback20190422.ldif
B、将备份的ldapback20190422.ldif数据库scp到新的主备服务器上
C、分别在主备服务器上进行如下操作:
systemctl stop slapd

清空过往数据

rm -rf /var/lib/ldap/*

导入源服务器的数据

slapadd -l ldapback20190422.ldif

修改LDAP数据目录权限

chown -R ldap.ldap /var/lib/ldap

再次启动ldap服务

systemctl start slapd

d、查找导入的数据
dapsearch -x -D “cn=ldap,dc=ptmind,dc=com” -b “dc=ptmind,dc=com” -W | grep dn


注意事项:
1、关于OpenLDAPAdmin管理页面提示“This base cannot be created with PLA“问题
ldapadd -f base.ldif -x -D cn=Manager,dc=mypaas,dc=com –W
2、创建base文件的时候后面不能有空格和空行

ldapadd -Y EXTERNAL -H ldapi:/// -f /root/disable_anon.ldif 导入相关配置

 类似资料: