CentOS7.8安装配置OpenLDAP

3 篇文章 0 订阅

目录

1.OpenLDAP服务安装

2.设置依赖数据库

3.修改配置文件

4.LDAPAdmin可视化工具的使用

1.OpenLDAP服务安装

在集群中选择一台服务器作为OpenLDAP的Server

执行如下命令安装OpenLDAP服务

yum -y install openldap-clients openldap-devel openldap-servers migrationtools sssd authconfig nss-pam-ldapd

 查看安装的RPM包  rpm -qa|grep openldap

 

2.设置依赖数据库

cp /usr/share//openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap:ldap /var/lib/ldap/

启动服务并设置开机自启

systemctl start slapd && systemctl enable slapd

查看启动状态 

systemctl status slapd

 

3.修改配置文件

openldap2.4.23以后的版本,所有配置都保存在/etc/openldap/slapd.d/cn=config 目录下,后缀为ldif。且每个配置都是通过命令自动生成的。在每个配置顶部都会有注释,提示请勿编辑。使用ldapmodify命令编辑

安装openldap后,会有三个命令用于修改配置文件,分别是ldapadd、ldapmodify、ldapdelete。顾名思义就是添加、修改、删除。

需要修改或增加配置时,需要先写一个ldif后缀的配置文件,然后通过命令将写的配置更新到slapd.d目录的配置文件中去。ldif即LDAP Data Interchange Format,是LDAP中数据交换的一种文件格式。文件内容采用的是key-value形式,注意value后面不能有空格

# 生成管理员密码,复制下来,一会需要用到  

slappasswd -s 123456

 # 新增修改密码文件,后缀时ldif,文件名随意。不要在/etc/openldap/slapd.d/目录下创建,可以建一个目录,后续手动编写的所有ldif文件都放入该目录下

vi changepwd.ldif

dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}JrHpNp+rGc6FiiLUbHXw2uiswwNnSdg4

  •         第一行执行配置文件,这里就表示指定为cn=config/olcDatabase={0}config文件。你到/etc/openldap/slapd.d/目录下就能找到此文件
  • 第二行 changetype 指定类型为修改
  • add 表示添加 olcRootPW(管理员密码) 配置项
  • 在执行下面的命令前,你可以先查看原本的olcDatabase={0}config文件,里面是没有olcRootPW这个项的,执行命令后,你再看就会新增了olcRootPW项,而且内容是我们文件中指定的值加密后的字符串
  • olc即Online Configuration,表示写入LDAP后不需要重启即可生效

执行命令,修改ldap配置,通过-f执行文件

ldapadd -Y EXTERNAL -H ldapi:/// -f changepwd.ldif

 执行下边的命令,将 /etc/openldap/schema中的Schema导入

ls /etc/openldap/schema/*.ldif | while read f; do ldapadd -Y EXTERNAL -H ldapi:/// -f $f; done

导入后此处可以看得到/etc/openldap/slapd.d/cn=config/cn=schema 对应的schema

 

设定默认域

先使用slappasswd生成一个密码(123456):

 新建一个domain.ldif的文件:

vi domain.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=Manager,dc=zhidaoauto,dc=com" read by * none

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

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


dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}OpMcf0c+pEqFLZm3i+YiI2qhId1G/yM3 #替换上面生成的密码


dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by
  dn="cn=Manager,dc=zhidaoauto,dc=com" write by anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=Manager,dc=zhidaoauto,dc=com" write by * read
  •  olcAccessaccess,该key用于指定目录的ACL即谁有什么权限可以存取什么
  • olcRootDN设定管理员root用户的distingush name
  • 注意替换上面文件内容中cn为具体的域信息
  • olcRootPW用上面新生成的密码替换

写入: 

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

 添加基本目录

新建一个basedomain.ldif的文件:

dn: dc=zhidaoauto,dc=com
objectClass: top
objectClass: dcObject
objectclass: organization
o: zhidaoauto com
dc: zhidaoauto

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

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

dn: ou=Group,dc=zhidaoauto,dc=com
objectClass: organizationalUnit
ou: Group
  •  注意替换上面文件内容中dn为具体的域信息
  • 理解dn,cn,dc
    • DC即Domain ComponentLDAP目录类似文件系统目录dc=zhidaoauto,dc=com相当于/com/zhidaoauto
    • CN即Common NameCN有可能代表一个用户名,例如cn=Manager,dc=zhidaoauto,dc=com表示在/com/zhidaoauto域下的管理员用户Manager
    • OU即Organizational Unit,例如ou=People,dc=zhidaoauto,dc=com表示在/com/zhidaoauto域下的一个组织单元People

写入: 

ldapadd -x -D cn=Manager,dc=zhidaoauto,dc=com -W -f basedomain.ldif
Enter LDAP Password:
adding new entry "dc=zhidaoauto,dc=com"

adding new entry "cn=Manager,dc=zhidaoauto,dc=com"

adding new entry "ou=People,dc=zhidaoauto,dc=com"

adding new entry "ou=Group,dc=zhidaoauto,dc=com"

测试:

ldapsearch -x -H ldap://localhost:389 -D "cn=Manager,dc=zhidaoauto,dc=com" -b "dc=zhidaoauto,dc=com" -w 123456
# extended LDIF
#
# LDAPv3
# base <dc=zhidaoauto,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# zhidaoauto.com
dn: dc=zhidaoauto,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: zhidaoauto com
dc: zhidaoauto

# Manager, zhidaoauto.com
dn: cn=Manager,dc=zhidaoauto,dc=com
objectClass: organizationalRole
cn: Manager
description: Directory Manager

# People, zhidaoauto.com
dn: ou=People,dc=zhidaoauto,dc=com
objectClass: organizationalUnit
ou: People

# Group, zhidaoauto.com
dn: ou=Group,dc=zhidaoauto,dc=com
objectClass: organizationalUnit
ou: Group

4.LDAPAdmin可视化工具的使用

下载地址LDAPAdmin官网:http://www.ldapadmin.org/download/index.html

连接OPenLDAP

1.双击LdapAdmin.exe程序打开

2.创建连接

 

测试成功后连接

 

 

LDAP Admin使用

1.通过LDAP Admin工具在ou=People下创建一个用户,选中该OU点击右键

填写用户信息

点击“OK”,完成用户创建

2.为faysona用户设置密码,选中该用户点击右键,选择“Set Password”

设置密码

密码设置成功

3.创建一个组,选中“ou=Group”点击右键

输入组名

选择cdswgroup组包含的成员

选择成功后

点击“Ok”完成创建

 

 

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值