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服务器方法

 

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

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