zoukankan      html  css  js  c++  java
  • OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装

    网上太多的例子搞 OpenLDAP  + phpLDAPadmin  但是没有一个能让你成功配置起来。蛋疼得很。记录一下过程

    系统版本:centos7.4

    软件版本:2.4.44  超级重要,版本不对基本都会错,注意

    一 Yum 配置

    wget http://mirrors.aliyun.com/repo/Centos-7.repo
        cp Centos-7.repo /etc/yum.repos.d/
        cd /etc/yum.repos.d/
        mv CentOS-Base.repo CentOS-Base.repo.bak
        mv Centos-7.repo CentOS-Base.repo
        yum clean all
        yum makecache

    二 关闭 SELinux  防火墙

     关闭防火墙:sudo systemctl stop firewalld.service

     禁用SELinux
       vim /etc/sysconfig/selinux
       SELINUX=disable 禁用 SeLinux

    三 安装 OpenLDAP

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

    查看版本:

    slapd -VV

     四  OpenLDAP

    4.1 配置密码

    slappasswd -s Aa123456
    
    

    4.2  修改olcDatabase={2}hdb.ldif文件

    olcRootPW: {SSHA}o1bqtofUr95dkEDdXbAMAVPFSnNDU3+2,然后修改域信息:
    olcSuffix: dc=hbgd,dc=com
    olcRootDN: cn=Manager,dc=hbgd,dc=com
    
    
    vim /etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldif

    olcRootPW:
    {SSHA}VYpLY03AGx9fcx6PdS5YDOtSPvKqMHXz 然后修改域信息: 
    olcSuffix: dc=hbgd,dc=com
    olcRootDN: cn=Manager,dc=hbgd,dc=com

    
    

    4.3 修改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=Manager,dc=hbgd,dc=com” read by * none

    4.4 验证配置 

    显示两行错误不要紧,最后一行是这个就行。

    4.5 启动 OpenLDAP

    systemctl enable slapd
    systemctl start slapd
    systemctl status slapd

    4.6 验证

    netstat -antup | grep 389

    五 配置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/

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

    5.2 修改migrate_common.ph文件 只改红色部分

    vim /usr/share/migrationtools/migrate_common.ph
    $DEFAULT_MAIL_DOMAIN = “hbgd.com”;
    $DEFAULT_BASE = “dc=hbgd,dc=com”;
    $EXTENDED_SCHEMA = 1;

    六 添加用户和组

    默认情况下OpenLDAP是没有普通用户的,但是有一个管理员用户。管理用户就是前面我们刚刚配置的root。

    6.1 创建用户 + 组
    现在我们把系统中的用户,添加到OpenLDAP中。为了进行区分,我们现在新加两个用户ldapuser1和ldapuser2,和两个用户组ldapgroup1和ldapgroup2,如下:

    添加用户组,使用如下命令:

    groupadd ldapgroup1
    groupadd ldapgroup2

    添加用户并设置密码,使用如下命令

    useradd -g ldapgroup1 ldapuser1
    useradd -g ldapgroup2 ldapuser2
    passwd
    ldapuser1
    passwd ldapuser2

    6.2 写入文件

    cat /etc/passwd | grep ldap  >> /root/users

    cat /etc/group | grep ldapgroup  >> /root/groups

    6.3 导入

    /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

     

    6.3 导入用户到 OpenLDAP 数据库

    cat > /root/base.ldif << EOF
    dn: dc=hbgd,dc=com
    o: hbgd com
    dc: com
    objectClass: top
    objectClass: dcObject
    objectclass: organization
    dn: cn=Manager,dc=hbgd,dc=com
    cn: Manager
    objectClass: organizationalRole
    description: Directory Manager
    dn: ou=People,dc=hbgd,dc=com
    ou: People
    objectClass: top
    objectClass: organizationalUnit
    dn: ou=Group,dc=hbgd,dc=com
    ou: Group
    objectClass: top
    objectClass: organizationalUnit
    EOF

    注意格式:  ldif 文件以空行作为用户分割,格式要保持一致

    导入基础数据库

    ldapadd -x -w Aa123456 -D cn=Manager,dc=hbgd,dc=com -f /root/base.ldif

    导入用户到数据库

    ldapadd -x -w Aa123456 -D cn=Manager,dc=hbgd,dc=com -f /root/users.ldif

    导入用户组

    ldapadd -x -w Aa123456 -D cn=Manager,dc=hbgd,dc=com -f /root/groups.ldif
    把 OpenLDAP 用户加入用户组
    cat > add_user_to_groups.ldif << "EOF" dn: cn=ldapgroup1,ou=Group,dc=hbgd,dc=com changetype: modify add: memberuid memberuid: ldapuser1 EOF

    ldapadd -x -w Aa123456 -D cn=Manager,dc=hbgd,dc=com -f /root/add_user_to_groups.ldif

    验证添加的OpenLDAP用户组信息,如下:

    ldapsearch -LLL -x -D cn=Manager,dc=hbgd,dc=com -w Aa123 -b dc=hbgd,dc=com cn=ldapgroup1

    配置 PHPldapadmin

    1 安装 Apache PHP

    yum -y install httpd php php-ldap php-gd php-mbstring php-pear php-bcmath php-xml

    2 安装 phpldapadmin

     yum -y install epel-release
     yum --enablerepo=epel -y install phpldapadmin

    3 修改配置

    vim /etc/phpldapadmin/config.php
    打开 dn 注释
    注释掉uid
    $servers->setValue('login','attr','dn');
    // $servers->setValue('login','attr','uid');
    vim /etc/httpd/conf.d/phpldapadmin.conf
    注释掉 Require local
    增加  Require all granted

    设置开机自启并启动Apache:

    systemctl enable httpd
    systemctl start httpd
    访问地址:
    http://IP/phpldapadmin/

    至此成功。  

    参考资料:(原文错误已在此文修正) https://blog.51cto.com/11555417/2065747

    God has given me a gift. Only one. I am the most complete fighter in the world. My whole life, I have trained. I must prove I am worthy of someting. rocky_24
  • 相关阅读:
    WebADI_数据验证1_建立基于PLSQL返回FND Message验证(案例)
    PLSQL_案例优化系列_探寻表设计对SQL优化的重要性(案例4)
    PLSQL_案例优化系列_学习左右SQL执行计划各种方法(案例14)
    PLSQL_案例优化系列_探讨该如何分析读懂析执行计划(案例9)
    WebADI_配置设定08_设定参数WebADI Parameters List(案例)
    WebADI_案例实施01_开发一个基于R12.1.3的简单WebADI Desktop(案例)
    PLSQL_案例优化系列_洞察表连接与SQL优化之间关系(案例8)
    WebADI_配置设定09_设定组件WebADI Components(案例)
    WebADI_配置设定07_设定显示WebADI Content / Mapping(案例)
    WebADI_案例实施03_利用FND_LOAD安装和迁移WEBADI以及设定(案例)
  • 原文地址:https://www.cnblogs.com/rocky24/p/11082838.html
Copyright © 2011-2022 走看看