172.21.251.111 server
172.21.251.112 node

{SSHA}gGQUjzyJX+Oi7ZJCURCVmqq2UmtVWHZd
一、环境准备
关闭 selinux firewalld
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: 123456
Re-enter new password: 123456
会返回加密的密码字符串,保存好这个字符串
{SSHA}f13zZnx/b4LQ/ErM+Rf9VSVEJqIE7yHM
3、更改openldap配置
查看安装了哪些文件(如果熟悉目录结构可以略过)
rpm -ql openldap
rpm -ql openldap-servers
修改配置
vim /etc/openldap/slapd.d/cn\=config\/olcDatabase\={2}hdb.ldif
找到olcSuffix,修改为你的dc,如:
dc=mypaas,dc=com
下一行olcRootDN, 修改为你的用户名,如:
cn=Manager,dc=mypaas,dc=com
在文件末尾添加一行,设置刚才的密码:
olcRootPW: {SSHA}f13zZnx/b4LQ/ErM+Rf9VSVEJqIE7yHM
4、更改监控认证配置
vim /etc/openldap/slapd.d/cn\=config\/olcDatabase\={1}monitor.ldif
修改 olcAccess 中的dn.base=”cn=xxxxxxx”这行为刚才设置的用户名,如:
dn.base=”cn=Manager,dc=mypaas,dc=com”
5、设置DB Cache
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/
6、测试配置文件
slaptest -u
末尾出现configfile testing successed 说明成功了
7、启动OpenLDAP和开机启动
systemctl start slapd.service
systemctl enable slapd.service
8、导入模板
ls /etc/openldap/schema/*.ldif | xargs -I {} sudo ldapadd -Y EXTERNAL -H ldapi:/// -f {}
三、安装Web管理服务
1、 安装httpd服务器
yum install httpd -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’);
$servers->setValue(‘login’,’attr’,’dn’);
把它的下一行注释掉
#$servers->setValue(‘login’,’attr’,’uid’);
6、修改访问配置文件,允许任意ip访问
vim /etc/httpd/conf.d/phpldapadmin.conf
取消Order Deny,Allow的注释
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、httpd 无法启动
先用systemctl status httpd 查看一下日志
1、提示端口号是否冲突,修改httpd.conf端口号
2、提示没有权限:检查selinux,防火墙是否关闭或者正确配置防火墙
2、phpldapadmin 用户名密码提示错误
检查/etc/phpldapadmin/config.php 中的参数是否正确配置
3、phpldapadmin创建子条目时,模板不能选中
未导入openldap的schema文件,执行下[1.8节]的命令试试

导入帐号:
vim /etc/openldap/base.ldif
dn: dc=wangqing,dc=com
o: ldap
objectclass: dcObject
objectclass: organization
dc: wangqing

ldapadd -f base.ldif -x -D cn=Manager,dc=wangqing,dc=com -w123456

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

<Directory /usr/share/phpldapadmin/htdocs>
<IfModule mod_authz_core.c>
# Apache 2.4
Require local
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
Require ip 172.0.0.0/8
</IfModule>
<IfModule !mod_authz_core.c>
</IfModule>
</Directory>

centos 7 部署LDAP服务的更多相关文章

  1. 快速部署ldap服务

    快速部署ldap服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.LDAP概述 .什么是目录服务 ()目录是一类为了浏览和搜索数据二十几的特殊的数据库,例如:最知名的的微软公 ...

  2. LDAP1-安装部署LDAP服务

    基于Linux部署openldap服务 参考文档: https://blog.csdn.net/computer1024/article/details/78172785 参考文档:  https:/ ...

  3. CentOS上部署JAVA服务【转】

    http://www.th7.cn/Program/java/201511/686437.shtml 本文将介绍如何在CentOS上运行Java Web服务,其中将包括如何搭建JAVA运行环境.如何开 ...

  4. centos上部署nginx服务

    Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由Igor Sysoev为俄罗斯访问量第二的R ...

  5. centos下部署redis服务环境的操作记录

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主 ...

  6. centos下部署redis服务环境及其配置说明

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主 ...

  7. Centos 7 部署FTP服务简单版

    第三方教程推荐与参考: http://blog.csdn.net/somehow1002/article/details/70232791 先安装成功了,有信心了.再进一步扩展配置. 1.安装vsft ...

  8. nginx+ssl+pm2 部署 nodejs 服务

    nginx+pm2 部署 nodejs 服务 最近在 centos 上部署 nodejs 服务,记下来步骤: 注意都是使用 root 用户. 下载 nvm: curl -o- https://raw. ...

  9. hadoop集群搭建--CentOS部署Hadoop服务

    在了解了Hadoop的相关知识后,接下来就是Hadoop环境的搭建,搭建Hadoop环境是正式学习大数据的开始,接下来就开始搭建环境!我们用到环境为:VMware 12+CentOS6.4 hadoo ...

随机推荐

  1. Spring MVC异常友好展示

    官网 https://docs.spring.io/spring/docs/4.3.25.RELEASE/spring-framework-reference/htmlsingle/ Springmv ...

  2. English--不完全及物动词与授予动词

    English|不完全及物动词与授予动词 动词在整个语法中都是占据着十分重要的角色.在五大句型中将动词分为五种:系动词.不及物动词.及物动词.不完全及物动词.授予动词.这篇主讲不完全及物动词和授予动词 ...

  3. JS案例 - 分页

    1.html文件 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  4. 转摘Python安装与环境变量的配置

    Python安装与环境变量的配置   python下载: Python安装包下载地址:http://www.python.org/ 根据实际的操作系统,安装合适的安装版本. Python安装: 本文以 ...

  5. java list map在初始化的时候添加元素

    List<String> list = new ArrayList<String>(){{ add("First Object"); add("S ...

  6. RabbitMQ基本概念(三)-Centos7下安装RabbitMQ3.6.1

    如果你看过前两章对RabbitMQ已经有了一定了解,现在已经摩拳擦掌,来吧动手吧! 用什么系统 本文使用的是Centos7,为了保证对linux不太熟悉的伙伴也能轻松上手(避免折在安装的路上),下面是 ...

  7. java标识符的作用和命名规则

    今天让我们从心开始学习Java,从最基础的开始. 这篇先从java标识符的作用和命名规则说起. 1.作用 常量.变量.方法.类和包等的名称. 2.命名规则 必须以字母._下划线.美元符$开头. 其他部 ...

  8. K-Dominant Character CodeForces - 888C

    题目链接:https://vjudge.net/problem/CodeForces-888C 划一条线,使得不论怎么划线,都会出现一个特定的字符,那么这条线最短要多长. 用字符间隔考虑. 先判断哪些 ...

  9. springboot ResponseEntity<byte[]> 下载文件 byte 都变成base64

    因为spring boot消息转换器 ,全部将数据转换为json格式,包括文件的byte数据 关于spring boot 的消息转换器见:https://www.jianshu.com/p/ffe56 ...

  10. python应用-表格式输出一组数据

    def main(): names=['关羽','张飞','赵云','马超','貂蝉'] subjects=['语文','数学','Python'] table=[[0 for _ in range( ...