博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LDAP安装步骤
阅读量:7157 次
发布时间:2019-06-29

本文共 3876 字,大约阅读时间需要 12 分钟。

大数据平台,LDAP和kerberos的统一账户管理和认证是必不可少的。通过Openldap来搭建LDAP服务器。

1. 安装openldap软件包

yum install openldap openldap-* -y

2. 初始化配置文件,不要手动去创建slapd.conf,可能会由于格式问题导致问题

cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf

3. 初始化数据库配置文件

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

4. 修改权限

chown -R ldap.ldap /etc/openldap chown -R ldap.ldap /var/lib/ldap

5. slapd.conf配置文件如下

# egrep -v "#|^$" /etc/openldap/slapd.confinclude         /etc/openldap/schema/corba.schemainclude         /etc/openldap/schema/core.schemainclude         /etc/openldap/schema/cosine.schemainclude         /etc/openldap/schema/duaconf.schemainclude         /etc/openldap/schema/dyngroup.schemainclude         /etc/openldap/schema/inetorgperson.schemainclude         /etc/openldap/schema/java.schemainclude         /etc/openldap/schema/misc.schemainclude         /etc/openldap/schema/nis.schemainclude         /etc/openldap/schema/openldap.schemainclude         /etc/openldap/schema/ppolicy.schemainclude         /etc/openldap/schema/collective.schemainclude         /etc/openldap/schema/kerberos.schema   <<<<<<

6. 安装kerberos软件

yum install krb5* -y

查找kerberos.schema文件,并拷贝到/etc/openldap/schema/kerberos.schema

# cd /usr/share/doc/krb5-server-ldap-1.10.3/# ls60kerberos.ldif  kerberos.ldif  kerberos.schema

7. 生成LDAP的root管理密码

slappasswd -s 123456{SSHA}L4uH7lVxwdS0/L/vspdseXORcneIWfeb

8. 检查配置文件是否有格式错误

# slaptest -f /etc/openldap/slapd.confconfig file testing succeeded

注意:需要先检查ldap是否已经启动。

 /etc/init.d/slapd start

不然会遇到如下错误:

# slaptest -f /etc/openldap/slapd.conf -F/etc/openldap/slapd.d5abc9554 bdb_db_open: database "dc=testserver,dc=com": db_open(/var/lib/ldap/id2entry.bdb) failed: No such file or directory (2).5abc9554 backend_startup_one (type=bdb, suffix="dc=envazure,dc=com"): bi_db_open failed! (2)slap_startup failed (test would succeed using the -u switch)

9. 准备生成LDAP数据库结构

先删除slapd.d的原有结构

rm -rf /etc/openldap/slapd.d/*

生成新的数据结构

slaptest -f /etc/openldap/slapd.conf -F/etc/openldap/slapd.d

修改权限,这个很重要,不然后面会报错

chown -R ldap:ldap /etc/openldap/slapd.d

每次修改都需要重启ldap

service slapd restart

10. 测试LDAP的连接,这里足足让我纠结两周,无数次的安装,有的时候可以正常登陆,有的时候会报错,明确说认证错误(密码错误)。这个一直让我以为是密码部分的格式设置有问题。各种尝试都无法正常解决掉。最后突然发现,是rootdn的问题,而不是rootpw的问题。

# ldapsearch -x -D "cn=admin,dc=testserver,dc=com" -h 10.24.103.17 -W -b 'ou=People,dc=testserver,dc=com'Enter LDAP Password: ldap_bind: Invalid credentials (49)

就是说,下面的命令中,要完整的复制sldap.conf中的“rootdn "cn=admin,ou=ldap,ou=admin,dc=testserver,dc=com"”条目信息,不能多,不能少

这样才能正常查询结果

ldapsearch -x -D "cn=admin,ou=ldap,ou=admin,dc=testserver,dc=com" -h 10.24.103.17 -W

11. LDAP创建成功之后,需要创建数据。由于我是迁移数据过来,只是将生产的ldap数据导出导入。

ldap数据备份的方式有两种:一种是通过ldapsearch ,一种是通过slapcat命令。很多人都是建议通过slapcat来完成,但是我测试一下,没有成功,就先使用ldapsearch导出,ldapadd导入的

/usr/sbin/slapcat > /tmp/liang/ldapdbak.ldif/usr/sbin/slapadd -l  /tmp/liang/ldapdbak.ldif

12. 导入数据命令

ldapadd -x -D "cn=admin,ou=ldap,ou=admin,dc=testserver,dc=com" -h 10.24.103.17 -W -f ldapexport.ldif

13. 查询数据,确认已经导入成功即可

ldapsearch -LLL -x -D "cn=admin,ou=ldap,ou=admin,dc=testserver,dc=com" -W -b "dc=testserver,dc=com" '(uid=*)'

15. 在客户端安装ldap软件,我比较偷懒,全都安装了,实际只安装openldap-clients就可以了

yum install openldap openldap-* -y

16. 设置LDAP客户端,客户端设置有几种方式

---1. 通过图形化命令完成LDAP client设置

LANG=C authconfig-tui

---2. 通过authconfig命令,配置客户端。由于是大数据平台运维,所以我是通过命令行实现的,这样比较方便批量处理。

authconfig --enablemkhomedir \--disableldaptls \--enablemd5 \--enableldap \--enableldapauth \--ldapserver=ldap://10.24.103.17 \--ldapbasedn="dc=testserver,dc=com" \--enableshadow \--update

17. 然后在client上,root用户su - username,可以发现,已经配置成功了。

看了很多人的blog,很简单的步骤,“yum安装-->sldap.conf的配置-->启动-->OK”,但是对于我来说,研究了2周多啊(工作空闲时间),真心很崩溃。即使一个小问题,自己也无法自行发现(理解问题)。所以,很多事情看似很简单,甚至于不屑于。做做试试,才能深深体会,理想和现实的差距

-----Update on 2018-2-23---------

最近发现连接同一个LDAP的不同client,使用同一个用户登录,一个client就可以正常登陆,另一个显示密码错误。百思不得其解。最后通过LDAP图形端,在两个client server都开启,发现选项有变化。修改之后问题解决。

LANG=C authconfig-tui

转载地址:http://pxhgl.baihongyu.com/

你可能感兴趣的文章
centos7默认运行级别和终端分辨率修改
查看>>
FMDB使用Cached Statement功能
查看>>
Echarts画折线图超过1000个点,加载慢
查看>>
DNS相关配置
查看>>
【新】斯凯平台的搭建
查看>>
linux中的“5种网络 IO 模型”
查看>>
Redis学习手册(目录)
查看>>
第二项目完成之后的小节
查看>>
capistrano安装
查看>>
PostgreSQL性能
查看>>
DOM4J实现XMl的增加,删除,修改,查询
查看>>
linux下apache和tomcat的整合
查看>>
Wordpress去插件化之合并插件
查看>>
CentOS安装SecureCRT的sz/rz工具包
查看>>
我的友情链接
查看>>
spring--
查看>>
SWAP 交换分区管理
查看>>
LoadRunner测试脚本
查看>>
ELK-kibana
查看>>
linux正则表达式
查看>>