OpenLDAP搭建

 

PS:本次实验是基于centos7,OpenLDAP使用2.4.44版本。

一、初始化环境

1.初始化环境

命令如下:

ntpdate -u ntp.api.bz && sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config && setenforce 0&& systemctl disable firewalld.service && systemctl stop firewalld.service && shutdown -r now

二、安装OpenLDAP

1.使用如下命令安装OpenLDAP

yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel migrationtools

2. 查看OpenLDAP版本

使用如下命令:slapd -VV

3.安装完了之后可以直接启动OpenLDAP服务

service slapd start

三、配置OpenLDAP

1.设置OpenLDAP的管理员密码

{SSHA}MCGLMmuUMpaqQ4lrCrAGKRxe51OxHh5F

上述加密后的字段保存下,等会我们在配置文件中会使用到

2.修改olcDatabase={2}hdb.ldif文件

修改olcDatabase={2}hdb.ldif文件

路径:/etc/openldap/slapd.d/cn=config/olcDatabase\=\{2\}hdb.ldif

对于该文件增加一行

olcRootPW: {SSHA}MCGLMmuUMpaqQ4lrCrAGKRxe51OxHh5F

然后修改域信息:

olcSuffix: dc=dc,dc=com

olcRootDN: cn=root,dc=dc,dc=com

注意:其中cn=root中的root表示OpenLDAP管理员的用户名,而olcRootPW表示OpenLDAP管理员的密码。

3 修改olcDatabase={1}monitor.ldif文件

命令:vim /etc/openldap/slapd.d/cn=config/olcDatabase\=\{1\}monitor.ldif

修改olcAccess字段值:

dn.base=”cn=root,dc=ilanni,dc=com”

注意:该修改中的dn.base是修改OpenLDAP的管理员的相关信息的。

4.验证OpenLDAP的基本配置

使用如下命令:

slaptest -u

通过上图,我们可以很明显的看出OpenLDAP的基本配置是没有问题。

启动OpenLDAP服务,使用如下命令:

systemctl enable slapd

systemctl start slapd

systemctl status slapd

OpenLDAP默认监听的端口是389,下面我们来看下是不是389端口,如下:

netstat -antup | grep 389

5. 配置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数据库默认存储的路径。

 

6.导入基本Schema

导入基本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

7.修改migrate_common.ph文件

migrate_common.ph文件主要是用于生成ldif文件使用,修改migrate_common.ph文件,如下:

vim /usr/share/migrationtools/migrate_common.ph +71

$DEFAULT_MAIL_DOMAIN = “ilanni.com”;

$DEFAULT_BASE = “dc=ilanni,dc=com”;

$EXTENDED_SCHEMA = 1;

四、PhpLDAPAdmin的搭建

1.安装EPEL仓库

1)安装EPEL仓库,镜像里没有PhpLDAPAdmin这个的安装包,所以得安装EPEL仓库

rpm -ivh

http://mirrors.ukfast.co.uk/sites/dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

yum clean all

yum makecache

2.安装PhpLDAPAdmin

yum install httpd phpldapadmin -y

3.配置phpldapadmin文件

1)修改phpldapadmin的配置文件,访问控制权限

vim /etc/httpd/conf.d/phpldapadmin.conf,允许谁访问

添加:

Require  all granted

Allow from all

2)修改配置文件:vim /etc/phpldapadmin/config.php

$servers->setValue('login','attr','dn');    这一行的注释去掉

//$servers->setValue('login','attr','uid');  这一行注释掉

3)重启httpd服务

service httpd restart

4)访问phpldapadmin

在浏览器输入OpenLDAP服务端的IP

例如:http://IP/phpldapadmin

输入账号: cn=root,dc=dc,dc=com

密码:  123456

openLDAP环境搭建的更多相关文章

  1. LNAMP服务器环境搭建(手动编译安装)

    LNAMP服务器环境搭建(手动编译安装) 一.准备材料 阿里云主机一台,操作系统CentOS 6.5 64位 lnamp.zip包(包含搭建环境所需要的所有软件) http://123.56.144. ...

  2. 授权管理-LDAP-介绍与环境搭建

    LDAP介绍 转自:https://blog.csdn.net/tanshizhen119/article/details/79942315 还是先来百度百科介绍. LDAP是轻量目录访问协议,英文全 ...

  3. centos6.5环境搭建openvp服务器及windows客户端搭建及配置详解

    1.环境搭建 说明: vpn client 192.168.8.16/24 openvpn server: eth0: 192.168.8.41 eth1: 172.16.1.10 app serve ...

  4. 【转】jumpserver 堡垒机环境搭建(图文详解)

    jumpserver 堡垒机环境搭建(图文详解)   摘要: Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能.基于ssh协议来管理,客户端无需安装ag ...

  5. zabbix环境搭建部署(一)

     Linux高端架构师课程 Linux实战运维国内NO.1全套视频课程 QQ咨询:397824870  > 监控报警 > zabbix环境搭建部署(一) zabbix环境搭建部署(一) 监 ...

  6. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  7. Azure Service Fabric 开发环境搭建

    微服务体系结构是一种将服务器应用程序构建为一组小型服务的方法,每个服务都按自己的进程运行,并通过 HTTP 和 WebSocket 等协议相互通信.每个微服务都在特定的界定上下文(每服务)中实现特定的 ...

  8. rnandroid环境搭建

    react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...

  9. python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运 ...

随机推荐

  1. 【Go语言】基本的语法

    昨天花了几个小时的时间把Go的语法过了一遍,发现Go语言的语法核心和大部分编程语言的规则还是挺相近的,差别的就是不同的书写规范.还有就是前天安装VScode编译器那个插件把人弄得恶心了,总是安装不成功 ...

  2. 《Java程序设计》第二周学习记录(2)

    目录 3.1 运算符与表达式 3.3 if条件分支语句 3.7 for语句与数组 参考资料 3.1 运算符与表达式 和C语言基本上没有区别,要注意的是关系运算符的输出结果是bool型变量 特别要注意算 ...

  3. TP连接数据库报错:SQLSTATE[HY000] [2002] No such file or directory

     连接数据库报错:“SQLSTATE[HY000] [2002] No such file or directory”. 出现这个问题的原因是PDO无法找到mysql.sock或者mysqld.soc ...

  4. JavaScript知识精简

      JS单线程,同步,一次执行某一段代码,等到前一个程序执行完毕再执行.,阻塞,安全. 多线程,异步,不用等到前一个程序执行完毕就执行. 数据类型 JavaScript 是 弱类型 语言,但并不是没有 ...

  5. laravel 比较好的资料地址 看云

    https://www.kancloud.cn/curder/laravel/408497

  6. axios的基本概念及安装配置方法

    ajax:异步请求,是一种无需再重新加载整个网页的情况下,能够更新部分网页的技术 axios:用于浏览器和node.js的基于promise的HTTP客户端 1.从浏览器制作XMLHttpReques ...

  7. fiddler学习总结--利用fiddler快速模拟mock

    Mock的应用就是在测试接口的时候,去模拟我们想要的接口 1.创建一个txt文件,里面随意写一个json字符串,如图所示: 2.选择目标消息,并且点击“autoresponde”-->“add ...

  8. 【转】python虚拟环境--virtualenv

    virtualenv 是一个创建隔绝的Python环境的工具.virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包. 安装 pip install virtu ...

  9. WebForm内置对象:Session、Cookie,登录和状态保持

    1.Request -获取请求对象 string s =Request["key"]; 2.Response  -  响应请求对象 Response.Redirect(" ...

  10. Kubernetes持久化存储2——探究实验

    目录贴:Kubernetes学习系列 一.简介 本文在“创建PV,创建PVC挂载PV,创建POD挂载PVC”这个环境的基础上,进行各种删除实验,并记录.分析各资源的状态. 二.实验脚本 实验创建了一个 ...