前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >「linux学习」之CentOS下ldap服务器搭建

「linux学习」之CentOS下ldap服务器搭建

作者头像
呆呆
修改2021-05-17 15:34:40
2K0
修改2021-05-17 15:34:40
举报
文章被收录于专栏:centosDai

1. 安装OpenLDAP

1.1 环境准备 lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID: CentOS Description: CentOS Linux release 7.5.1804 (Core) Release: 7.5.1804

下载 openldap, 默认yum已搭建好,yum未搭建成功可以查看我的yum搭建

yum install openldap openldap-* -y

安装成功后执行: slapd -VV

@(#) $OpenLDAP: slapd 2.4.44 (May 16 2018 09:55:53) $ mockbuild@c1bm.rdu2.centos.org:/builddir/build/BUILD/openldap-2.4.44/openldap-2.4.44/servers/slapd

设置管理员密码, 会返回一串加密字符串,保存好

slappasswd -s l root123

{SSHA}y9iku13lm4jikn8uTwqxry0juyetrjh1

开始配置文件:

vim /etc/openldap/slapd.d/cn=config/olcDatabase\=\{2\}hdb.ldif

olcSuffix: dc=root,dc=local

olcRootDN: cn=Manager,dc=root,dc=local

olcRootPW: {SSHA}hWP0W7XKBLTSfDgrG0FxZ5DaEr5lkZov

注: dc中可以设置你想要的用户名即可

修改监控配置文件:

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=Manager,dc=root,dc=local" read by * none

使配置生效:slaptest -u

返回 config file testing succeeded 算成功

修改数据库配置: cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

修改权限:chown ldap:ldap -R /var/lib/ldap

生效配置: slaptest -u

启动ldap服务: systemctl start slapd

设置开机自启动: systemctl enable slapd

service httpd status

启动正常, 输入ldapsearch -x,检查输出

# extended LDIF # # LDAPv3 # base <> (default) with scope subtree # filter: (objectclass=*) # requesting: ALL #

# search result search: 2 result: 32 No such object

# numResponses: 1

安装phpldapadmin

更新本地yum源, 本地yum源没有phpldapadmin的包, 所以需要手动更新

yum localinstall http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

安装php:

yum install phpldapadmin

配置文件 vi /etc/httpd/conf.d/phpldapadmin.conf

注释其他,留下以下部分:

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs Alias /ldapadmin /usr/share/phpldapadmin/htdocs

<Directory /usr/share/phpldapadmin/htdocs> Order Deny,Allow Allow from all </Directory>

修改http配置文件:

vi /etc/httpd/conf/httpd.conf

1.按下esc, 输入: set nu  

   注释102-106, 尾随加入107-110

   102 #<Directory />   103 # AllowOverride none   104 # Require all denied   105 #</Directory>   106   <Directory />

  Options FollowSymLinks

  AllowOverride None

  Order deny,allow

  allow from all

  </Directory> 

2. 修改监听端口:  为了防止端口冲突建议修改端口

  semanage port -a -t http_port_t -p tcp 888

  Listen 888

  ServerName localhost:888

修改php配置文件: vim /etc/phpldapadmin/config.php

 1. 找到并注释:// $servers->setValue('login','attr','uid');

 2. 空白部分加入:

重启httpd服务:systemctl restart httpd

访问: http://ip:888/phpldapadmin/

登录LDAP DN填写:cn=Manager,dc=root,dc=local 密码:root123

注意几个问题: 有可能密码错误的问题:

1. ldif相关问题在修改配置中不允许有多余空格, 最好原文修改,或者注释以后不要留下多余空行或空格, 会直接导致httpd server faild  !!! 

 /etc/openldap/slapd.d/cn=config/olcDatabase\=\{2\}hdb.ldif

  /etc/openldap/slapd.d/cn=config/olcDatabase\=\{1\}monitor.ldif

2. cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG   ---- >> 这条语句执行完不一定数据库就会生效

发现自己用户名或者密码错误的时候, 不要在怀疑了, 直接查看数据库配置

cat slapd.ldif ,看数据库中配置文件用户名是否还是系统初始分配的,是,直接修改数据库配置

vim  DB_CONFIG.example   --- >> 吧红圈部分修改成自己的用户名

dc=root,dc=local

cn=Manager,dc=root,dc=local

重启服务: 

systemctl restart httpd

导入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

重启服务: 

systemctl restart httpd  完成

如果出现: This base cannot be created with PLA  --- >> cd /etc/openldap/base.ldif  --- >>写入如下四行

                          dn: dc=root,dc=local o: ldap objectclass: dcobject objectclass: organization

                          创建根节点: ldapadd -f base.ldif -x -D cn=Manager,dc=root,dc=local -W

                          Enter LDAP Password: root123 adding new entry "dc=root,dc=local"

      或者用户名密码错误, 检查 1/2hdb.ldif,DB_CONFIG.example 这三个文件中配置的用户名密码是否一致

      或者只能匿名登录 ---- >>检查 1/2hdb.ldif,DB_CONFIG.example 这三个文件中配置的用户名密码是否一致

systemctl restart httpd  完成

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 安装OpenLDAP
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档