linux搭建开源ldap服务器方法

linux搭建开源ldap服务器方法1.什么是ldap服务器ldap是统一认证服务,它的优点是存储用户认证等不经常改变的信息,有清晰的组织结构。ldap条目概念:基准DN,例如dc=company,dc=com,DN,例如cn=test,dc=company,dc=com,一个DN就是一个条目,RDN是相对DN,具有唯一性,上面例子的DN的RDN就是cn=test2.下载openldapopenld…

大家好,又见面了,我是你们的朋友全栈君。

 

 

1.什么是ldap服务器

ldap是统一认证服务,它的优点是存储用户认证等不经常改变的信息,有清晰的组织结构。

ldap条目概念:基准DN,例如dc=company,dc=com,DN,例如cn=test,dc=company,dc=com,一个DN就是一个条目,RDN是相对DN,具有唯一性,上面例子的DN的RDN就是cn=test

 

2.下载openldap

openldap服务器是比较流行的服务器,下载路径在如下地址中,

http://www.openldap.org/software/download/

本文安装的openldap版本为2.4.47

 

3.安装过程中会提示缺少依赖项,需到oracle官网下载Berkeley DB 6.0.20以前版本,下载地址如下

https://www.oracle.com/technetwork/database/database-technologies/berkeleydb/downloads/index-082944.html

下载完成后编译并安装Berkeley DB到指定目录

cd db-5.3.28/build_unix/

../dist/configure -prefix=/usr/local/BerkeleyDB

make

make install

4.上传openldap到服务器并解压,开始编译安装,

开始前需设置编译参数,如下所示

export CPPFLAGS="-I/usr/local/BerkeleyDB/include"
export LDFLAGS="-L/usr/local/BerkeleyDB/lib"
export LD_LIBRARY_PATH="/usr/local/BerkeleyDB/lib"

设置完成后可以进行openldap的安装了

进入openldap源代码目录,

./configure --prefix=/data/ldap

安装完成后的效果如下所示,etc目录显示的是配置文件ldapbin目录显示的ldap的客户端工具,sbin目录显示的是服务器相关执行文件,libexec下是ldap服务启动程序,.ldif是ldap特定的文件格式,这种格式的文件用于ldap数据的添加

linux搭建开源ldap服务器方法

 

5.配置ldap配置文件,并启动ldap,启动完成后添加超级管理员账号

这个版本配置文件是使用的slapd.d下的文件,而不是slapd.conf,slapd.d是通过slapd.conf生成的

slapd.conf下的主要配置信息如下,证书的生成在我的另一篇博文中

access to dn.base="" by * read   
access to dn.base="cn=Subschema" by * read
access to *
        by * auth
        by dn.exact="cn=admin,dc=example-test,dc=com" manage
        by * none  #配置权限控制,格式为access to what(什么内容) by  who(谁) access(权限)


# rootdn can always read and write EVERYTHING!
TLSCACertificateFile /data/ldap/cert/ca.crt       #ldaps使用的配置证书,证书通过easy-rsa生成
TLSCertificateFile   /data/ldap/cert/server.crt
TLSCertificateKeyFile /data/ldap/cert/server.key
TLSCipherSuite ALL:!TLSv1.1:TLSv1.2:!SSLv2:!aNULL:!eNULL:!MD5:!MEDIUM:!LOW:!EXPO 
RT:@STRENGTH  #配置加密套件

#######################################################################
# MDB database definitions
#######################################################################

database        mdb   #后端存储的数据库类型
maxsize         1073741824
suffix          "dc=example-test,dc=com"
rootdn          "cn=admin,dc=example-test,dc=com"
rootpw          {SSHA}hr1NdaaaieqgrtttutrurtuaXD0 #密码通过客户端工具生成slappasswd -s passwd

directory       /data/ldap/var/openldap-data

index   objectClass     eq

slapd.d生成方式如下

slaptest -f /data/ldap/etc/openldap/slapd.conf -F /data/ldap/etc/openldap/slapd.d

之后启动ldap

 /data/ldap/libexec/slapd -F /data/ldap/etc/openldap/slapd.d -h "ldaps:///"

添加超级管理员条目

[root@localhost ldap]# more example.ldif 

dn: dc=example-test,dc=com
objectclass: dcObject
objectclass: organization
o: example-tesCompany
dc: example-test

dn: cn=admin,dc=example-test,dc=com
objectclass: organizationalRole
cn: admin

##注意:行中填写的内容最后不能有空格,条目之间用空行隔开

添加条目 

 

ldapadd -x -D "cn=admin,dc=example-test,dc=com" -W -f example.ldif

 查看添加的条目

ldapsearch -x -b 'dc=example-test,dc=com' -D "cn=admin,dc=example-test,dc=com" -W'(objectclass=*)'

6.windows客户端访问

linux搭建开源ldap服务器方法

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146395.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • QQ机器人制作教程,超详细「建议收藏」

    QQ机器人制作教程,超详细「建议收藏」目录前期准备1、机器人框架的下载和配置2、python的配置和安装具体实现1、发送信息2、获取群成员列表3、接收上报的事件4、实现简单的自动回复下一篇文章介绍更多功能前期准备1、机器人框架的下载和配置首先需要一个qq机器人框架,我使用的是基于mirai以及MiraiGo开发的go-cqhttp(里面有开发文档)。框架下载地址Windows下32位文件为go-cqhttp-v*-windows-386.zipWindows下64位文件为go-cqhttp-v*-windows-amd6

    2025年9月19日
    6
  • 无法解析外部符号

    无法解析外部符号本人在写qt工程的时候遇到无法解析外部符号原因:只写了类声明,但还没有写实现类,造成调用时无法解析。解决方法,把还没有实现类的声明给注释掉。参考博客无法解析的外部符号考虑可能的原因:[0]出现无法解析可能是因为lib文件不正确,比如64位的编译配置,结果使用的是32位的lib包.[1]只写了类声明,但还没有写实现类,造成调用时无法解析[2]声明和定义没有统一,造成链接不一致,无法

    2022年6月28日
    24
  • PhpStorm 2021.5.3 激活码[在线序列号][通俗易懂]

    PhpStorm 2021.5.3 激活码[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    45
  • DVP MIPI-CSI 摄像头接口的区别

    DVP MIPI-CSI 摄像头接口的区别一、MIPI1、什么是MIPI?MIPI联盟,即移动产业处理器接口(MobileIndustryProcessorInterface简称MIPI)联盟。MIPI(移动产业处理器接口)是MIPI联盟发起的为移动应用处理器制定的开放标准和一个规范。2、MIPI的特点MIPI是差分串口传输,速度快,抗干扰。主流手机模组现在都是用MIPI传输,传输时使用4对差分信号传输图像数据和…

    2022年5月3日
    182
  • nginx php apache php 对比,Apache和nginx的比较「建议收藏」

    nginx php apache php 对比,Apache和nginx的比较「建议收藏」nginx相对apache的优点:● 轻量级,同样起web服务,比apache占用更少的内存及资源● 抗并发,nginx处理请求是异步非阻塞的,而apache则是阻塞型的,在高并发下nginx能保持低资源低消耗高性能● 高度模块化的设计,编写模块相对简单● 社区活跃,各种高性能模块出品迅速啊● Nginx支持更多的并发连接,能够支持高达50000个并发连接数的相应● 能在不间断服务…

    2022年6月6日
    29
  • 算法设计克林伯格pdf_LSTM算法

    算法设计克林伯格pdf_LSTM算法第一部分 levmar的安装与使用 Levenberg-Marquardt算法是求解非线性问题的一个非常好用的算法。该算法属于信赖域算法的一种,关于信赖域算法的解释可以参考这一博主的解释:关于信赖域算法理解,个人感觉很好。    Levenberg-Marquardt算法是一个开源的算法,其文件下载地址如下:http://www.netlib.org/clapack/C

    2022年10月1日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号