Linux(centos7.9)搭建ldap服务器
一.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服务器
- 下载Ldap Admin(http://www.ldapadmin.org/)
- 连接ldap服务器
依次点击start---connect---New connection,然后输入 Host,Base以及用户名与密码,如下图所示,然后test connection。

登录成功

所有内容只为了记录搭建和学习过程,部分内容源于网络。
Linux(centos7.9)搭建ldap服务器的更多相关文章
- 腾讯云服务器linux centOS7.4 搭建ftp服务器 vsftpd
腾讯云服务器linux centos 7.4 搭建ftp服务器 vsftpd 在centos 7.3测试也是OK的,其它版本没有实验 # 安装 vsftpd $ yum install vsftpd ...
- 2020年,手把手教你如何在CentOS7上一步一步搭建LDAP服务器的最新教程
同步滚动:关 什么是LDAP 什么是LDAP? 要想知道一个概念,最简单的办法就是wikipedia,当然也可以百科. LDAP全称是轻型目录访问协议(Lightweight Directory Ac ...
- Linux中用postfix搭建邮件服务器实战详解
Linux中用postfix搭建邮件服务器实战详解 postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.Postfix试图更快.更容易管理.更安全,同时 ...
- Linux搭建Ldap服务器
一,服务器安装 yum install -y openldap openldap-clients openldap-servers migrationtools 二,配置ldap服务器 2.1配置ld ...
- 在Centos7下搭建Git服务器
① 安装 Git ② 服务器端创建 git 用户,用来管理 Git 服务,并为 git 用户设置密码 ③ 服务器端创建 Git 仓库 ④ 客户端 clone 远程仓库 ⑤ 客户端创建 SSH 公钥和私 ...
- CentOS7下搭建邮件服务器(dovecot + postfix + SSL)
CentOS 花了基本上两天的时间去配置CentOS7下的邮件服务器.其中艰辛太多了,一定得总结下. 本文的目的在于通过一系列配置,在CentOS 7下搭建dovecot + postfix + ...
- Windows 下搭建LDAP服务器
五一闲来没事,加上项目正在进行UAT.抽空研究了一下LDAP相关知识.随手做一个记录. 为了方便阅读还是先介绍一下什么是LDAP? 前言.Lightweight Directory Access Pr ...
- Windows和Linux环境下搭建SVN服务器
--------------------------Windows下搭建SVN服务器----------------------------- 一.安装SVN服务端 软件包Setup-Subversi ...
- Centos7安装搭建NTP服务器和NTP客户端同步时间
NTP简介: NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 在计算机的世界里,时间非常地重要 例如:对于火箭发射这种科研活动,对时间的 ...
- git操作:在CentOS7上面搭建GitLab服务器
在这篇文章中将要讲解如何在CentOS7上面搭建本地的GitLab服务器. 一.安装并配置必要的依赖关系 首先要在CentOS系统上面安装所需的依赖:ssh.防火墙.postfix(用于邮件通知).w ...
随机推荐
- C# 返回指定目录下所有文件信息
返回指定目录下所有文件信息 /// <summary> /// 返回指定目录下所有文件信息 /// </summary> /// <param name="st ...
- mysql统计特定字符串出现次数
其中'test'为原始字符串,'t'为特定字符串 SELECT floor((char_length('test') - char_length(replace('test', 't', '')) ...
- 使用Git进行版本控制,不同的项目怎么设置不同的提交用户名和邮箱呢?
1.全局设置用户名和邮箱 因为平时除了开发公司项目还会写自己的项目或者去维护开源项目,一般情况下,公司会要求提交代码时使用自己的真名或者拼音和公司邮箱,以前就只会设置全局用户名或邮箱如下 git co ...
- ASP.NET Core - 配置系统之自定义配置提供程序
4. 自定义配置提供程序 在 .NET Core 配置系统中封装一个配置提供程序关键在于提供相应的 IconfigurationSource 实现和 IConfigurationProvider 接口 ...
- C_C++常用函数汇总
1 string.h.cstring(C) (1)字符串连接函数 strcat.strncat strcat(char[ ], const char[ ]) strncat(char[ ], cons ...
- 学习笔记if
- Python——基础知识(一)
1. 那么多编程语言,为什么学python 易于学习,是所有编程语言当中最容易学习的 没有最好的语言,只有最合适的语言 2. 反复执行的用例如何提升效率 测试流程回归(回顾) 很多测试用例在不同的测试 ...
- Java面试——RPC
一.RPC 服务的原理 [1]Socket 套接字:网络上的两个程序通过一个双向的通信连接实现数据的交换,这个链接的一端称为 Socket.可以实现不同计算机之间的通信,是网络编程接口的具体实现.So ...
- hadoop 第二期
Hive 启动hive 使用命令`hive` 输入命令之后要有一个 ; 结尾!!!!!!! DDL命令 1.创建数据表 create table lxl( num int, name string, ...
- (原创)【B4A】一步一步入门10:TabHost,标签页、标题带图标(控件篇06)
一.前言 本篇教程我们来讲一下TabHost(标签页)的基本使用方法. 相信看完的你,一定会有所收获! 本文地址:https://www.cnblogs.com/lesliexin/p/1728556 ...