在Centos7上部署LDAP服务

本文详细描述了如何在Linux系统上安装OpenLDAP服务器,包括启动服务、配置管理账号、创建数据库、修改配置文件、添加基础数据库和域名属性,以及组织单元的设置,旨在帮助读者完成LDAP服务器的基本部署。
摘要由CSDN通过智能技术生成

安装ldap和设置自起

- 安装ldap

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

在这里插入图片描述

- 启动和开机自起

systemctl start  slapd
systemctl enable slapd

在这里插入图片描述

- 查看服务是否安装成功

在这里插入图片描述

配置ldap

- 创建第一个管理账号密码

slappasswd

在这里插入图片描述

- 切换工作目录到/etc/openldap/slapd.d

在这里插入图片描述

- 新增db.ldif文件,设置cn=config/olcDatabase={2}hdb.ldif 数据库文件

vim db.ldif

以下内容注意值的内容结束后不要有空格(空行也不要有空格),否则会报错!
我的家乡在自贡贡井区!

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=gongjing,dc=com

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=admin,dc=gongjing,dc=com

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW

在这里插入图片描述

- 执行修改

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

在这里插入图片描述

- 修改前和修改后文件内容变化

在这里插入图片描述
图1: 修改前(已经改过一次但改失败了)
在这里插入图片描述
图2: 修改后–修改的字段都有了

- olcSuffix和olcRootRN的关系和区别

在这里插入图片描述在这里插入图片描述

- 新增monitor.ldif,用于修改cn=config/olcDatabase={1}monitor.ldif文件

vi 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=admin,dc=gongjing,dc=com" read by * none

在这里插入图片描述

- 执行修改

在这里插入图片描述

- 修改前后对比

在这里插入图片描述
图1:cn=config/olcDatabase={1}monitor.ldif未修改之前
在这里插入图片描述
图2:修改后的结果

- 添加基础数据库

scheme是针对不同事物,存储信息的属性不同,设计的各种存储信息结构

#复制ldap原有配置,并赋予它所有权限
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap:ldap /var/lib/ldap/*

# 添加基础库;即三个基础结构的数据结构
# Cosine schema是一套基础且常用的schema集合,包含了互联网上广泛认可的标准属性和类定义,如电子邮件相关属性、组织和人员信息等;
# NIS Schema扩展了LDAP目录的能力,使其能够支持和兼容原本在NIS系统中使用的数据结构,如用户、组、主机名等信息,使得从NIS迁移至LDAP或者在LDAP中模拟NIS环境变得可能;
# inetOrgPerson是一个标准的LDAP对象类别(ObjectClass),它是基于X.520目录模型并扩展了person类别,专为存储互联网和个人相关信息而设计。它包括了许多与人相关的属性,如电子邮件地址、电话号码、职务、部门等,非常适合用于存储和管理组织内的员工、成员或联系人信息。
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

- 编辑域名属性,和三大分组(group, pepole, admin)

新增base.ldif

vi base.ldif
dn: dc=gongjing,dc=com
dc: gongjing
objectClass: top
objectClass: domain

dn: cn=admin,dc=gongjing,dc=com
objectClass: organizationalRole
cn: admin
description: LDAP Manager

dn: ou=People,dc=gongjing,dc=com
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=gongjing,dc=com
objectClass: organizationalUnit
ou: Group

在这里插入图片描述

- 将域名和分组写到数据库

ldapadd -x -W -D "cn=admin,dc=gongjing,dc=com" -f base.ldif

-D表示指定什么用户
在这里插入图片描述
从管理界面看域名和分组的对应关系:
在这里插入图片描述

至此ldap已经部署成功!吃点零食庆祝一下!

说明:基本是采用了下面篇文档进行部署,很多内容含义是通过通义千问查的!https://blog.csdn.net/ownfire/article/details/135581042

通义千问的解答:
在这里插入图片描述

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是CentOS 8上部署LDAP的步骤: 1. 安装OpenLDAP 使用以下命令安装OpenLDAP: ``` sudo dnf install openldap openldap-servers openldap-clients ``` 2. 配置OpenLDAP 首先,创建LDAP数据库: ``` sudo systemctl enable slapd.service sudo systemctl start slapd.service sudo systemctl status slapd.service ``` 然后,使用如下命令创建LDAP管理员账户: ``` sudo slappasswd ``` 输入管理员密码并复制生成的散列值,然后打开 `/etc/openldap/slapd.d/cn=config/olcDatabase={2}mdb.ldif` 文件并替换以下行: ``` olcRootPW: {SSHA}Generated_Hash ``` 将 `Generated_Hash` 替换为你刚才复制的散列值。 接下来,创建一份新的配置文件 `/etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif`: ``` sudo nano /etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif ``` 输入以下内容: ``` dn: olcDatabase={0}config,cn=config objectClass: olcDatabaseConfig olcDatabase: {0}config olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage by * none olcAddContentAcl: FALSE olcLastMod: TRUE olcMaxDerefDepth: 15 olcReadOnly: FALSE olcRootDN: cn=admin,cn=config olcRootPW: {SSHA}<YourAdminPasswordHash> olcSchemaDN: cn=ldap,cn=schema,cn=config olcSubordinate: TRUE olcSyncrepl: {0}rid=001 provider=ldap://localhost:389 type=refreshOnly interval=00:00:01:00 searchbase="cn=config" scope=sub schemachecking=on bindmethod=simple binddn="cn=admin,cn=config" credentials="<YourAdminPassword>" starttls=critical tls_reqcert=never olcLogLevel: sync ``` 将 `<YourAdminPasswordHash>` 替换为管理员账户的散列值。 3. 创建LDAP用户 创建一个新的文件,例如 `example.ldif`,并添加以下内容来创建一个新的LDAP用户: ``` dn: uid=johndoe,dc=example,dc=com objectClass: top objectClass: account objectClass: posixAccount objectClass: shadowAccount cn: John Doe uid: johndoe uidNumber: 10000 gidNumber: 10000 homeDirectory: /home/johndoe loginShell: /bin/bash gecos: John Doe userPassword: {crypt}x shadowLastChange: 0 shadowMax: 0 shadowWarning: 0 ``` 将 `uid` 和 `dc` 替换为你的实际值,并为 `userPassword` 添加用户密码的散列值。 使用以下命令将用户添加到LDAP数据库中: ``` sudo ldapadd -x -D "cn=admin,cn=config" -W -f example.ldif ``` 4. 配置LDAP客户端 首先,安装客户端软件: ``` sudo dnf install openldap-clients ``` 然后,编辑 `/etc/openldap/ldap.conf` 文件并添加以下内容: ``` URI ldap://localhost BASE dc=example,dc=com ``` 将 `BASE` 替换为你的实际值。 现在,使用以下命令测试LDAP连接: ``` ldapsearch -x -b "dc=example,dc=com" "(objectclass=*)" ``` 如果连接成功,将会显示LDAP数据库中的所有对象。 至此,LDAP已经成功部署CentOS 8上。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值