虚拟机环境:centos 7

一、环境准备

1、关闭 selinux firewalld
临时:
setenforce 0 
永久:
vi /etc/sysconfig/selinux
SELINUX=enforcing 改为 SELINUX=disabled
重启服务reboot 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}YcUGpZBSZt3chctkPwr5WXgQhvugxcnv
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}YcUGpZBSZt3chctkPwr5WXgQhvugxcnv
4、更改监控认证配置
vi /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
# 查看运行状态
systemctl status 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 

改为下图所示
<IfModule mod_authz_core.c>
# Apache 2.4
Require local
Require ip 172.16.31
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from all
Allow from all
Allow from ::1
</IfModule>
7、创建基础目录
1、在/etc/openldap目录下添加base.ldif文件
cd /etc/openldap/ 
vim base.ldif
2、在文件中添加以下内容
dn: dc=mypaas,dc=com
o: ldap
objectclass: dcObject
objectclass: organization
dc: mypaas 
8、重启httpd服务
systemctl restart httpd.service
9、访问web管理端
访问 http://ip/phpldapadmin 登陆用户名:cn=Manager,dc=mypaas,dc=com

linux安装openldap步骤的更多相关文章

  1. Linux安装JDK步骤

    Linux安装JDK步骤 1.先从官网下载JDK安装包,我下载的是:jdk-8u131-linux-x64.tar.gz版本 2.在usr下创建java文件夹 # mkdir /usr/java 3. ...

  2. linux安装jdk7步骤

    linux安装jdk7步骤: 1.首先使用命令查看linux系统版本号: lsb_release -a 2.下载对应的jdk版本,笔者使用的是jdk-7u79-linux-x64.tar.gz: 3. ...

  3. Linux安装mongoDB步骤和方法

    Linux安装mongoDB步骤和方法 下载mongoDB数据库 mongodb-linux-x86_64-3.0.15.tgz 存放到linux文件夹中 ftp软件直接拖上去 解压文件夹(解压后,会 ...

  4. 安装OpenLDAP步骤

    磨砺技术珠矶,践行数据之道,追求卓越价值 回到上一级页面: PostgreSQL杂记页     回到顶级页面:PostgreSQL索引页 [作者 高健@博客园  luckyjackgao@gmail. ...

  5. 常见问题:Linux安装Python3步骤、Windows无法利用pip

    Linux安装python3.6和第三方库的步骤: 我的Linux是CentOS 6.5版本 Linux下大部分系统默认自带python2.x的版本,最常见的是python2.6或python2.7, ...

  6. linux安装nginx步骤

    转载自:https://blog.csdn.net/t8116189520/article/details/81909574,修改部分内容 本文已收录至博客专栏linux安装各种软件及配置环境教程中 ...

  7. Linux安装Redis步骤和make遇到的坑

    Linux安装Redis服务步骤 1.获取redis资源 ​​​​​​​cd /usr/local wget https://mirrors.huaweicloud.com/redis/redis-6 ...

  8. linux安装java步骤

    本文转发自博客园-Q鱼丸粗面Q.博客园-郁冬的文章,内容略有改动 本文已收录至博客专栏linux安装各种软件及配置环境教程中 方式一:yum方式下载安装 1.查找java相关的列表 yum -y li ...

  9. 【linux安装软件步骤】

    一.解析linux应用软件安装包: 通常Linux应用软件的安装包有三种: tar包,如software-1.2.3-1.tar.gz.它是使用UNIX系统的打包工具tar打包的. rpm包,如sof ...

随机推荐

  1. stm32 定时器初步

    今天学习STM32 的通用定时器:TIMx (TIM2.TIM3.TIM4 和 TIM5). 定时器比较复杂,功能繁多,这里我们就说最基本的计数功能. 1.定时器的时钟从哪里来? 定时器的时钟来源有 ...

  2. type='button'和'submit'的区别

    今天在对表单的项目进行删除时出现了问题,原因就出现在点击input按钮时,这个input属性是type='button'还是type='submit'. 代码大致如下: <script type ...

  3. pat1100. Mars Numbers (20)

    1100. Mars Numbers (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue People o ...

  4. pat1019. General Palindromic Number (20)

    1019. General Palindromic Number (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN ...

  5. pop3密码嗅探

    成品与代码可在 https://pan.baidu.com/s/1MPfU2T_6YN6mgxUL0wrZxw 下载 来说下pop协议, 英文版,https://tools.ietf.org/html ...

  6. 事物TransactionScope

    using  System.Transactions 如果修改.删除.添加一类操作涉及到多张表,那么最好用事物 trans.Complete();保证多张表的同时修改 using (Transacti ...

  7. JDK基本知识

    JDK发展史: JDK1.0:提供了一个纯解释的Java虚拟机实现 JDK1.3:把Java技术体系拆分为3个方向,J2SE,J2EE,J2ME,并且Java虚拟机第一次内置了JIT JDK1.4:增 ...

  8. TP5.0搭建restful API 应用

    1.配置环境变量,如果没配置会显示如下错误. 配置方法 1)右键此电脑-> 属性-> 高级系统设置->环境变量->Path 2)在Path后加上php目录的名称 如:E:\PH ...

  9. android ContentProvider共享数据

    ContentProvider共享数据 ContentProvider对外共享数据需要: 1.定义一个ContentProvider类,需要继承android的ContentProvider基类 2. ...

  10. python网络编程-paramiko模块

    paramiko模块 该模块基于SSH用于连接远程服务器并执行相关操作 参考文档 SSHClient 用于连接远程服务器并执行命令 import paramiko #创建SSH对象 ssh = par ...