一.LDAP是什么

后期更新,目前只搭建了服务器

二.linux搭建LDAP服务器

以下服务器信息为该文档安装Radius服务环境

服务器信息:CentOS7 

内核版本:3.10.0-1160.el7.x86_64

1.使用yum进行安装

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

2.安装完毕后,检查服务运行状态

安装完之后,直接启动服务并且将服务设置为自启动状态,检查服务运行状态(如果未启动成功,自行手工启动)

systemctl start slapd
systemctl enable slapd

3.创建根密码

此密码用于整个安装过程,是LADP的管理员根密码,使用slappasswd 命令生成密码。输入slappasswd后提示输入密码(Aa23456)与确认密码,系统会输出一串加密后的字符串

slappasswd

4.配置服务

(修改的所有过程,均使用ldapmodify完成)

cd /etc/openldap/slapd.d/cn=config
ll

  • 修改db文件

在任意目录创建 db.ldif文件(尽量不要在/etc/openldap/slapd.d/cn=config目录下创建)

vim db.ldif

在db.ldif文件中编辑下面内容,目的就是替换上图中olcDatabase={2}hdb.ldif中olcSuffix, olcRootDN, olcRootPW这三个字段的内容

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=ricman,dc=localhost dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=Manager,dc=ricman,dc=localhost dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}KUYZ4irDCPN8seoOg1zNNVzh70jVr1c8

编辑完成后,在db.ldif目录下运行命令

ldapmodify -Y EXTERNAL -H ldapi:/// -f db.ldif

出现下图,即代表更改完成,三个字段内容被成功替换

  • 修改monitor文件

在刚刚的db.ldif目录下创建monitor.ldif

vim monitor.ldif

编辑下面内容(一定一定要注意格式,空格之类的问题,我试了好多次都报错,直到这次才成功)

dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external, cn=auth" read by dn.base="cn=Manger,dc=ricman,dc=localhost" read by * none

编辑完成后,在monitor.ldif目录下运行命令

ldapmodify -Y EXTERNAL -H ldapi:/// -f monitor.ldif

修改完成

  • 创建ldap基础库

复制ldap原有配置,并赋予它所有权限

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap:ldap /var/lib/ldap/*

然后向数据库添加schemas,包括cosine、nis、inetorgperson,然后分别执行下列命令

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

  •  创建base.ldif
dn: dc=ricman,dc=localhost
dc: ricman
objectClass: top
objectClass: domain dn: cn=Manager ,dc=ricman,dc=localhost
objectClass: organizationalRole
cn: Manager
description: LDAP Manager dn: ou=People,dc=ricman,dc=localhost
objectClass: organizationalUnit
ou: People dn: ou=Group,dc=ricman,dc=localhost
objectClass: organizationalUnit
ou: Group

输入下方命令保存至数据库

ldapadd -x -W -D "cn=Manager,dc=ricman,dc=localhost" -f base.ldif

至此,ldap基础配置已基本完成。

5.管理和使用ldap服务器

依次点击start---connect---New connection,然后输入 Host,Base以及用户名与密码,如下图所示,然后test connection。

登录成功

所有内容只为了记录搭建和学习过程,部分内容源于网络。

Linux(centos7.9)搭建ldap服务器的更多相关文章

  1. 腾讯云服务器linux centOS7.4 搭建ftp服务器 vsftpd

    腾讯云服务器linux centos 7.4 搭建ftp服务器 vsftpd 在centos 7.3测试也是OK的,其它版本没有实验 # 安装 vsftpd $ yum install vsftpd ...

  2. 2020年,手把手教你如何在CentOS7上一步一步搭建LDAP服务器的最新教程

    同步滚动:关 什么是LDAP 什么是LDAP? 要想知道一个概念,最简单的办法就是wikipedia,当然也可以百科. LDAP全称是轻型目录访问协议(Lightweight Directory Ac ...

  3. Linux中用postfix搭建邮件服务器实战详解

    Linux中用postfix搭建邮件服务器实战详解 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.Postfix试图更快.更容易管理.更安全,同时 ...

  4. Linux搭建Ldap服务器

    一,服务器安装 yum install -y openldap openldap-clients openldap-servers migrationtools 二,配置ldap服务器 2.1配置ld ...

  5. 在Centos7下搭建Git服务器

    ① 安装 Git ② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码 ③ 服务器端创建 Git 仓库 ④ 客户端 clone 远程仓库 ⑤ 客户端创建 SSH 公钥和私 ...

  6. CentOS7下搭建邮件服务器(dovecot + postfix + SSL)

    CentOS   花了基本上两天的时间去配置CentOS7下的邮件服务器.其中艰辛太多了,一定得总结下. 本文的目的在于通过一系列配置,在CentOS 7下搭建dovecot + postfix + ...

  7. Windows 下搭建LDAP服务器

    五一闲来没事,加上项目正在进行UAT.抽空研究了一下LDAP相关知识.随手做一个记录. 为了方便阅读还是先介绍一下什么是LDAP? 前言.Lightweight Directory Access Pr ...

  8. Windows和Linux环境下搭建SVN服务器

    --------------------------Windows下搭建SVN服务器----------------------------- 一.安装SVN服务端 软件包Setup-Subversi ...

  9. Centos7安装搭建NTP服务器和NTP客户端同步时间

    NTP简介: NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 在计算机的世界里,时间非常地重要 例如:对于火箭发射这种科研活动,对时间的 ...

  10. git操作:在CentOS7上面搭建GitLab服务器

    在这篇文章中将要讲解如何在CentOS7上面搭建本地的GitLab服务器. 一.安装并配置必要的依赖关系 首先要在CentOS系统上面安装所需的依赖:ssh.防火墙.postfix(用于邮件通知).w ...

随机推荐

  1. ValueError: unsupported format character ‘Y‘ (0x59) at index 70

    错误信息:ValueError: unsupported format character 'Y' (0x59) at index 70产生原因:因为python执行的sql中存在类似DATE_FOR ...

  2. 关于JDBC的学习

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

  3. msfconsole的使用

    msfconsole是metasploit中的一个工具: msfconsole集成了很多漏洞的利用的脚本,并且使用起来很简单的网络安全工具 在终端输入msfconsole命令即可进入msf的控制台,m ...

  4. ElasticSearch 实现分词全文检索 - match、match_all、multimatch查询

    目录 ElasticSearch 实现分词全文检索 - 概述 ElasticSearch 实现分词全文检索 - ES.Kibana.IK安装 ElasticSearch 实现分词全文检索 - Rest ...

  5. Android笔记--Android+数据库的增加数据的实现

    具体实现 添加成功: 界面代码很简单,直接忽略. 连接数据库的代码: Connect.java package com.example.myapplication.database; import a ...

  6. 小笨自采集在线电脑壁纸 v2.0-支持移动端自适应,支持https

    这周闲着没事,翻着网站,记得去年的发表的一篇文章小笨分享一款高清电脑壁纸API,主要是将孟坤壁纸改造支持https,还加了一个搜索功能.以前的壁纸是这样的: 但是,不支持移动端浏览,于是小笨趁着这周周 ...

  7. 集成Health Kit时因证书问题出现错误码50063的解决方案

    一.问题描述及操作 应用集成Health Kit SDK后,在华为手机上进行登录授权时,返回错误码50063. 1.查看相关错误码.'50063'在Health Kit错误码中的描述是"安装 ...

  8. ThreadLocal部分源码分析和应用场景

    结构演进 早起JDK版本中,ThreadLocal内部结构是一个Map,线程为key,线程在"线程本地变量"中绑定的值为Value.每一个ThreadLocal实例拥有一个Map实 ...

  9. VUE3.x之Proxy 我们为什么要使用Proxy

    Object.defineProperty 劫持数据 只是对对象的属性进行劫持 无法监听新增属性和删除属性 需要使用 vue.set, vue.delete 深层对象的劫持需要一次性递归 劫持数组时需 ...

  10. 第三章3.3 selenium基础

    seleniumIDE:是一款可以实现录制回放的操作:存在可视化窗口进行录制回放操作:它属于firefox(chrome)浏览器的插件;安装方式:两种 : 1.下载安装包离线安装2.在线安装 注意:不 ...