openldap主机搭建

openldap服务端的安装

1.安装相关openldap的软件

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

2.安装完成后就可以在/etc/passwd文件中看到ldap用户
在这里插入图片描述

3.openldap相关的文件配置

/etc/openldap/slapd.conf:OpenLDAP的主配置文件,记录根域信息,管理员名称,密码,日志,权限等
/etc/openldap/slapd.d/:这下面是/etc/openldap/slapd.conf配置信息生成的文件,每修改一次配置信息,这里的东西就要重新生成
/etc/openldap/schema/
:OpenLDAP的schema存放的地方
/var/lib/ldap/*:OpenLDAP的数据文件
/usr/share/openldap-servers/slapd.conf.obsolete 模板配置文件
/usr/share/openldap-servers/DB_CONFIG.example 模板数据库配置文件

OpenLDAP监听的端口:
默认监听端口:389(明文数据传输)
加密监听端口:636(密文数据传输)

4.初始化openldap配置

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

5.启动openldap服务

systemctl start slapd 
systemctl enable slapd
systemctl status slapd

6.为openldap生成管理员密码

slappasswd -s 123456
#这里会生成一串{SSHA}***的东西,这个东西就是SSHA加密的密码,后面操作需要这串密码,这里的123456就是为加密前的密码

7.新建一个名为rootpwd.ldif的文件夹,将下方写入该文件

#gvim rootpwd.ldif

dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}***
#这里的olcRoolPW后面对应的{SSHA}就是第6步生成的加密密码

ldif即LDAP Data Interchange Format,是LDAP中数据交换的一种文件格式。文件内容采用的是key-value形式,注意value后面不能有空格。
其实这是在修改数据库的信息,数据库的配置在/etc/openldap/slapd.d/cn=config文件夹下。通过命令将配置在线覆盖进数据库里。

上面内容中dn即distingush name
olc即Online Configuration,表示写入LDAP后不需要重启即可生效
changetype: modify表示修改一个entry,changetype的值可以是add,delete, modify等。
add: olcRootPW表示对这个entry新增了一个olcRootPW的属性
olcRootPW: {SSHA}l**指定了属性值

8.读取rootpwd.ldif文件信息

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

在这里插入图片描述

如果上诉命令报错

[root@openldap-master opt]# ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry “olcDatabase={0}config,cn=config”
ldap_modify: Inappropriate matching (18)
additional info: modify/add: olcRootPW: no equality matching rule
解决办法: 修改modify.ldif中对应选项的"add"为"replace"即可

9.导入schema

向 LDAP 中导入一些基本的 Schema预设模式。这些 Schema 文件位于 /etc/openldap/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

10.设定默认域,新建一个根节点

(1) 使用slappadd -s *** 再生成一个加密密码

根节点管理员密码与 OpenLDAP 管理员密码不是同一回事!一个 LDAP 数据库可以包含多个目录树。
#slappasswd -s 123456

(2)先想好一个域名,然后再创建一个名为domain.ldif的文件,

#我这里的域名为openldap.com,这里的加密密码使用第10步生成的密码
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=openldap,dc=com" read by * none

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

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

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: {SSHA}oh1TTIAb2e4PR0/MVQksCnLB82ph+Mr1

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=admin,dc=openldap,dc=com" write by anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=admin,dc=openldap,dc=com" write by * read

(3)执行domain.ldif文件

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

11.添加基础的目录
在这里插入图片描述

参考上图,我们建立一个基础的openldap目录
创建一个名为base.ldif的文件,将以下命令写入

dn: dc=openldap,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: com
dc: openldap

dn: cn=admin,dc=openldap,dc=com
objectClass: organizationRole
cn: admin
description: Directory Manager

dn: ou=People,dc=openldap,dc=com
objectClass: organizationlUnit
ou: People

dn: ou=Group,dc=openldap,dc=com
objectClass: organizationlUnit
ou: Group

执行base.ldif文件,根据提示输入第10步生成未加密的密码
ldapadd -x -D cn=admin,dc=openldap,dc=com -W -f base.ldif

12.使用LDAP Admin进行连接测试

下载安装LDAP Admin软件,新建一个连接,填写的信息如下,HOST就是该openldap的ip地址

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值