Linux 安装并配置 OpenLDAP 新编(1)快速入门指南

Linux 安装并配置 OpenLDAP 新编(1)快速入门指南

快速入门,仅用于学习和本地开发,不要直接在生产环境中实施!

获取软件

官方的快速入门指南中,2.4-2.6的三个版本都只讲解了源代码编译安装的方式,本系列的前几章选择了 LTS 版本的 2.5.11 小版本做为测试版本。

本系列文章目前仅在Oracle Linux R8系统中测试通过!计划部署实施的生产服务器OS是Aliyun Cloud Linux!

获取源代码

gunzip -c openldap-2.5.11.tgz | tar xvfB -

编译安装准备

yum install make gcc gcc-c++ libdb libdb-devel libtool-ltdl libtool-ltdl-devel openssl openssl-devel -y
# openldap-clients openldap-devel 为2.4.46版本
# openldap-devel 会递归安装依赖 cyrus-sasl-devel v2.1.27
yum install openldap openldap-clients openldap-devel -y

编译安装

在V8开始的版本中,YUM不再提供 openldap-server 的软件包,因此只能编译安装,在官网下载软件后并解压缩:

./configure
make depend
make
make test
make install

如果在 configure 时未指定位置,安装后的文件分散与如下目录中:

  • /usr/local/etc/openldap/ :配置模板目录
  • /usr/local/sbin/ : 离线操作的工具目录
  • /usr/local/bin/ : 客户端工具目录
  • /usr/local/libexec/ : 启动文件目录

启动服务

编辑配置文件

从安装后的配置模板目录中,复制默认的 slapd.ldif 到当前目录并进行编辑,目前仅注意修改下面几项即可:

# 将下面的 dc 改为你想要的名字,如果域名包含多个部分,例如:ldap.example.com
# 可以改为: dc=ldap,dc=example,dc=com
olcSuffix: dc=example,dc=com
olcRootDN: cn=Manager,dc=example,dc=com
olcRootPW: {SSHA}YilkGHwGBSwiYXaaqviw5TJqqMQELqMk
# 注意这里的目录,为数据存储目录,此目录需要手工创建,并且权限为700
olcDbDirectory: /usr/local/var/openldap-data

上面的 olcRootPW 是加密密码,该密码可用下面的命令生成:

slappasswd -s 123456

导入配置数据库

# 创建配置文件存储目录
mkdir /usr/local/etc/slapd.d
# 下面的 slapd.ldif 为上一步复制出来并修改后的文件
/usr/local/sbin/slapadd -n 0 -F /usr/local/etc/slapd.d -l slapd.ldif
# 显示下面的信息,表示添加成功
Closing DB...

启动 SLAPD

/usr/local/libexec/slapd -F /usr/local/etc/slapd.d

# 检查配置是否正确以及服务启动正常
ldapsearch -x -LLL -b '' -s base '(objectclass=*)' namingContexts

添加条目到目录中

添加条目到目录中,一般只需要2步:1.创建LDIF文件;2.运行ldapadd添加

创建LDIF文件
dn: dc=example,dc=com
objectclass: dcObject
objectclass: organization
o: Example Company
dc: example

dn: cn=Manager,dc=example,dc=com
objectclass: organizationalRole
cn: Manager
运行ldapadd添加
ldapadd -x -D "cn=Manager,dc=example,dc=com" -W -f add_root.ldif

# 搜索
ldapsearch -x -LLL  -b 'dc=example,dc=com' '(objectclass=*)'

总结

很多时候学习的过程是:不知其然-->知其然,不知其所以然-->知其所以然。实际上做到这里,一个简单的OpenLDAP服务器就已经搭建完成了,理论上可以进行除了系统管理级别之外的任何操作。但是因为我刚开始实验的时候,还处于不知其然的初级阶段,因此即使部署成功了,但是不知道怎么用,以及用什么,后面又多花了2天才发现我已经安装成功了!

参考资料

posted @ 2022-05-04 10:07  雨帝夜泪  阅读(816)  评论(0编辑  收藏  举报