安装OpenLDAP及添加相关用户和组

本文详细介绍在CentOS系统上安装配置OpenLDAP的过程,包括安装、配置数据库、导入Schema、添加用户和组等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.安装openLDAP

  1. centos中执行如下命令
yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel migrationtools

在这里插入图片描述
在这里插入图片描述
2. 生成管理员密码

# 执行如下命令后,生成的是对密码进行加密后的字符串
slappasswd -s admin123

在这里插入图片描述
3. 修改olcDatabase={2}hdb.ldif文件

# 从OpenLDAP2.4.23版本开始所有配置数据都保存在/etc/openldap/slapd.d/中,已无slapd.conf作为配置文件使用了
vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif
#修改
olcSuffix: dc=demo,dc=com
olcRootDN: cn=admin,dc=demo,dc=com
#添加
olcRootPW: {SSHA}X6iQ+/u82kxjVA1z87tQYnhI8XUDnU3N

保存并退出
在这里插入图片描述
4. 修改olcDatabase={1}monitor.ldif文件

vim /etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldif
#修改管理员信息
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=extern
al,cn=auth" read by dn.base="cn=admin,dc=demo,dc=com" read by * none

保存并退出
在这里插入图片描述
5. 验证配置

slaptest -u

出现如下所示则显示验证完成
在这里插入图片描述
6. 启动OpenLDAP

# 启动OpenLDAP
systemctl start slapd
# 查看OpenLDAP的状态
systemctl status slapd

在这里插入图片描述

2. 配置 OpenLDAP

  1. 配置OpenLDAP数据库
# OpenLDAP默认使用的数据库是BerkeleyDB,现在来开始配置OpenLDAP数据库,使用如下命令:
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap:ldap -R /var/lib/ldap
chmod 700 -R /var/lib/ldap
ll /var/lib/ldap/  # /var/lib/ldap/就是BerkeleyDB数据库默认存储的路径。

在这里插入图片描述
2. 导入基本Schema

# 分别执行如下命令
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

在这里插入图片描述
3. 修改migrate_common.ph文件

# migrate_common.ph文件主要是用于生成ldif文件使用。
vim /usr/share/migrationtools/migrate_common.ph

修改信息如下:

$DEFAULT_MAIL_DOMAIN = "demo.com";
$DEFAULT_BASE = "dc=demo,dc=com";
$EXTENDED_SCHEMA = 1;

在这里插入图片描述
4. 重启服务

systemctl restart slapd

到这步便完成了OpenLDAP的配置相关工作了

3. 添加用户和组

在我们安装配置好对应OpenLDAP相关服务后,该服务下是默认没有普通用户,只有一个管理员用户,如我们上述配置的cn=admin,dc=demo,dc=com
下面我们介绍一下如何创建用户和组

  1. 创建用户和组
# 新增两个用户和两个组,分别执行如下命令,并按提示设置相关信息
groupadd ldapgroup1
groupadd ldapgroup2
useradd -g ldapgroup1 ldapuser1
useradd -g ldapgroup2 ldapuser2
passwd ldapuser1
passwd ldapuser2

在这里插入图片描述
2. 写入到文件

# 添加的用户和用户组属性信息提取出来
grep "ldapuser" /etc/passwd > /root/users
grep "ldapgroup" /etc/group > /root/groups
  1. 生成ldif文件
    这里使用migrate_passwd.pl文件生成要添加用户和用户组的ldif
    命令如下:
/usr/share/migrationtools/migrate_passwd.pl /root/users > /root/users.ldif
/usr/share/migrationtools/migrate_group.pl /root/groups > /root/groups.ldif

验证是否设置成功

cat users.ldif
cat groups.ldif

在这里插入图片描述
4. 新建基础数据库ldif文件

vim /root/base.ldif
# 注意:ldif 文件以空行作为用户分割,格式要保持一致。
dn: dc=demo,dc=com
o: demo com
dc: demo
objectClass: top
objectClass: dcObject
objectclass: organization

dn: cn=admin,dc=demo,dc=com
cn: admin
objectClass: organizationalRole
description: Directory Manager

dn: ou=People,dc=demo,dc=com
ou: People
objectClass: top
objectClass: organizationalUnit

dn: ou=Group,dc=demo,dc=com
ou: Group
objectClass: top
objectClass: organizationalUnit

在这里插入图片描述
5. 导入账号信息到OpenLDAP数据库

  1. 导入基础数据库
ldapadd -x -w admin123 -D cn=admin,dc=demo,dc=com -f /root/base.ldif
  1. 导入用户信息
ldapadd -x -w admin123 -D cn=admin,dc=demo,dc=com -f /root/users.ldif
  1. 导入用户组信息
ldapadd -x -w admin123 -D cn=admin,dc=demo,dc=com -f /root/groups.ldif
  1. 用户加入到用户组
    OpenLDAP用户和用户组之间是没有任何关联的,需要新建添加用户到用户组的ldif文件,下面把ldapuser1用户加入到ldapgroup1用户组。
  2. 新建文件
cat > add_user_to_groups.ldif << EOF
dn: cn=ldapgroup1,ou=Group,dc=demo,dc=com
changetype: modify
add: memberuid
memberuid: ldapuser1
EOF
  1. 添加
ldapadd -x -w admin123 -D cn=admin,dc=demo,dc=com -f /root/add_user_to_groups.ldif
  1. 查看
ldapsearch -LLL -x -w admin123 -D 'cn=admin,dc=demo,dc=com' -b 'dc=demo,dc=com' cn='ldapgroup1'

在这里插入图片描述
到这里,基本功能已经配置完成,可以通过phpLDAPadmin进程访问连接。如何使用PHPLDAPadmin可以查看另一篇文章安装PHPLDAPadmin图形化管理工具

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值