OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装

摘要:
网上太多的例子搞OpenLDAP+phpLDAPadmin但是没有一个能让你成功配置起来。记录一下过程系统版本:centos7.4软件版本:2.4.44超级重要,版本不对基本都会错,注意一Yum配置wgethttp://mirrors.aliyun.com/repo/Centos-7.repocpCentos-7.repo/etc/yum.repos.d/cd/etc/yum.repos.d/mvCentOS-Base.repoCentOS-Base.repo.bakmvCentos-7.repoCentOS-Base.repoyumcleanallyummakecache二关闭SELinux防火墙关闭防火墙:sudosystemctlstopfirewalld.service禁用SELinuxvim/etc/sysconfig/selinuxSELINUX=disable禁用SeLinux三安装OpenLDAPyum-yinstallopenldapcompat-openldapopenldap-clientsopenldap-serversopenldap-servers-sqlopenldap-develmigrationtools查看版本:slapd-VV四OpenLDAP4.1配置密码slappasswd-sAa1234564.2修改olcDatabase={2}hdb.ldif文件olcRootPW:{SSHA}o1bqtofUr95dkEDdXbAMAVPFSnNDU3+2,然后修改域信息:olcSuffix:dc=hbgd,dc=comolcRootDN:cn=Manager,dc=hbgd,dc=comvim/etc/openldap/slapd.d/cn=config/olcDatabase={2}hdb.ldifolcRootPW:{SSHA}VYpLY03AGx9fcx6PdS5YDOtSPvKqMHXz然后修改域信息:olcSuffix:dc=hbgd,dc=comolcRootDN:cn=Manager,dc=hbgd,dc=com4.3修改olcDatabase={1}monitor.ldif文件红色部分即可vim/etc/openldap/slapd.d/cn=config/olcDatabase={1}monitor.ldifolcAccess:{0}to*bydn.base=”gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth”readbydn.base=”cn=Manager,dc=hbgd,dc=com”readby*none4.4验证配置显示两行错误不要紧,最后一行是这个就行。

网上太多的例子搞 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 2.4.44 安装 + phpLDAPadmin 安装第1张

四 OpenLDAP

4.1 配置密码

slappasswd -s Aa123456

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第2张

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 验证配置

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第3张

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

4.5 启动 OpenLDAP

systemctl enable slapd
systemctl start slapd
systemctl status slapd

4.6 验证

netstat -antup | grep 389

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第4张

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

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第5张

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

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第6张

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

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第7张

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第8张

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 文件以空行作为用户分割,格式要保持一致

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第9张

导入基础数据库

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

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第10张

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

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第11张

设置开机自启并启动Apache:

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

OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装第12张

至此成功。

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

免责声明:文章转载自《OpenLDAP 2.4.44 安装 + phpLDAPadmin 安装》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇TextView设置动态改变颜色linux sed 批量替换字符串下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux CentOS7 VMware find命令、文件名后缀

一、find命令 Linux系统中的 find 命令在查找文件时非常有用而且方便。它可以根据不同的条件来查找文件,例如权限、拥有者、修改日期/时间、文件大小等等。在这篇文章中,我们将学习如何使用 find 命令以及它所提供的选项来查找文件。 列出当前目录和子目录下的所有文件 [root@davery ~]# find../.bash_logout./.ba...

shell中的dd命令使用详解

一、dd命令的解释 dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。 注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b=512;c=1;k=1024;w=2 参数注释: 1. if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file > 2. of=文件名:输出文件名,缺省为标准输出。即指...

linux shell脚本神一般的测试案例

本人对shell脚本一点都不了解,工作中用到了shell脚本,所有就只能赶鸭子上架,搜度娘一点一点的写了。在搜索的过程中看到了比较好的案例。大家可以参考一下。以后肯定可以用的到。 声明本文转载至 http://www.educity.cn/linux/1241314.html 脚本1:为root用户编写登录欢迎脚本:   1、用vi命令在/root目录是新...

awk、变量、运算符、if多分支

awk、变量、运算符、if多分支 awk: 语法 awk [options] 'commands' files option -F 定义字段分隔符,默认的分隔符是连续的空格或制表符 使用option中的-F参数定义间隔符号 用$1,$2,$3等的顺序表示files中每行以间隔符号分隔的各列不同域 NF变量表示当前记录的字段数 -v 定义变量并赋值 也可以借...

CentOS 7安装GitLab、汉化、配置邮件发送

1、更换国内yum源 1.1 备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 1.2 下载新的CentOS-Base.repo 到/etc/yum.repos.d/ wget -O /etc/yum.repos.d/CentOS-Base.r...

CentOS6.6安装及配置vsftpd文件服务器

1、安装vsftpd和db4-utils,后者用来生成密码库文件,命令如下:   # yum install -y vsftpd db4* 2、修改SELINUX,命令如下:   # vim /etc/sysconfig/selinux    // 将SELINUX=enforcing 改为 SELINUX=permissive   # setenforc...