centos 6.5 openldap php,Centos7.6 openldap部署

2023-10-13 19:50

本文主要是介绍centos 6.5 openldap php,Centos7.6 openldap部署,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Centos7.6 openldap部署

花了一个星期左右研究。

一、安装环境

二、安装openldap并启动slapd.service服务

三、copy DB_CONFIG.example 并授权DB_CONFIG目录权限

四、设定slapd编译过的密码并保存,修改文件中要用到。

五、新增vim chrootpw.ldif及vim chdomain.ldif&vim basedomain.ldif

六、向 LDAP 中导入一些基本的 Schema

七、安装httpd服务及phpldapadmin管理工具

八、修改phpldapadmin.conf&httpd.conf&config.php文件

九、用web访问ldapadmin 从OpenLDAP2.4.23版本开始所有配置数据都保存在slapd.d目录下的cn=config文件夹中,不再使用slapd.conf作为配置文件

有两种配置方式,一种是通过修改旧版配置文件slapd.conf,再用slaptest -f /etc/openldap/slapd.conf -F /etc/openldap/slapd.d/导入到数据库中,这种方式非常麻烦,不建议使用。

一种是通过编辑ldif文件,再用ldapadd命令导入到数据库中,这种方式是动态配置,不需要重新启动服务端slapd进程。

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

1、安装环境

1.1、centos 7.6

1.2、Idap服务器192.168.0.88

Openldap 2.4.44

Root帐号下执行所以命令

2、安装ldap服务器端yum install openldapap openldap-clients.x86_64 openldap-servers 2.1、systemctl start slapd.service

a4af00e8769eb223fbdcf76f69591b6e.png

2.2、systemctl enable slapd.service

88eb8c5a6544ca10876d276141ff42e1.png

openldap: #OpenLDAP配置文件、库和文档

openldap-servers: #服务器进程及相关命令、迁移脚本和相关文件

openldap-clients: #客户端进程及相关命令,用来访问和修改 OpenLDAP 目录

2.3、安装过程中会自动创建ldap用户和ldap组

[root@slapd /]# grep ldap /etc/passwd

[root@slapd /]# grep ldap /etc/group

3、复制数据库模板

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

# chown ldap. /var/lib/ldap/DB_CONFIG

4、设定slad密码,并复制好,等下修改文件使用。

[root@localhost ~]# slappasswd

c7793dfed2338a50c89205873ad4f0a0.png

New password: 123456

Re-enter new password:123456

{SSHA}tF+yodMmimS/7z4D7GKOfnJyZ3xo3XQ8

使用 slappasswd 命令生成管理员(admin)密码,编写 LDIF(一种LDAP 专用的数据交换格式)文件并通过ldapadd命令将管理员密码导入到 LDAP配置文件中。

5、新增vim chrootpw.ldif及vim chdomain.ldif文件,并keyin相关数据

[root@ladp conf.d]# vim chrootpw.ldif

dn: olcDatabase={0}config,cn=config

changetype: modify

add: olcRootPW

olcRootPW: {SSHA}BXTlwAUMwVSgqHr0WlIEud3iu9ddjvQE

0ca12eeb3fd8eaa493bdf4941112badb.png

5、中导入一些基本的 Schema

我们需要向 LDAP 中导入一些基本的 Schema。这些 Schema 文件位于 /etc/openldap/schema/ 目录中,schema控制着条目拥有哪些对象类和属性

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

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

配置 LDAP 的根域(以 dc=baidu,dc=com 为例)及其管理域:

vim chdomain.ldif

#用你自己的域名代替"dc=***,dc=***"语句块

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=baidu,dc=com” read by * none

dn: olcDatabase={2}hdb,cn=config

changetype: modify

replace: olcSuffix

olcSuffix: dc=baidu,dc=com

dn: olcDatabase={2}hdb,cn=config

changetype: modify

replace: olcRootDN

olcRootDN: cn=admin,dc=baidu,dc=com

dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcRootPW

olcRootPW: {SSHA}F6zoILgoKS68zC8gStge4h+7seulqgmG

dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcAccess

olcAccess: {0}to attrs=userPassword,shadowLastChange by

dn=“cn=admin,dc=baidu,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=badiu,dc=com” write by * read #导入[root@ladp conf.d]# ldapmodify -Y EXTERNAL -H ldapi:/// -f chdomain.ldif

45d23201fda4b732825a2945562a831f.png

6.1、在上述基础上,我们来创建一个叫做 baidu company 的组织,并在其下创建一个 admin 的组织角色(该组织角色内的用户具有管理整个 LDAP 的权限)和 People 和 Group 两个组织单元:

vim basedomain.ldif

dn: dc=baidu,dc=com

objectClass: top

objectClass: dcObject

objectClass: organization

o: Baidu Company

dc: baidu

dn: cn=admin,dc=baidu,dc=com

objectClass: organizationalRole

cn: admin

dn: ou=People,dc=baidu,dc=com

objectClass: organizationalUnit

ou: People

dn: ou=Group,dc=baidu,dc=com

objectClass: organizationalRole

cn: Group

1a3cc7a11d20baa60e4cc6d27e9e4d1b.png

ldapsearch -x -b “dc=baidu,dc=com” -H ldap://127.0.0.1

ldapadd -x -D cn=admin,dc=baidu,dc=com -W -f basedomain.ldif

Enter LDAP Password: #输入上面设置的管理员密码(明文) adding new entry “dc=baidu,dc=com”

通过以上的所有步骤,我们就设置好了一个 LDAP 目录树:其中基准 dc=baidu,dc=com 是该树的根节点,其下有一个管理域 cn=admin,dc=baidu,dc=com 和两个组织单元 ou=People,dc=baidu,dc=com 及 ou=Group,dc=baidu,dc=com。

7、安装httpd服务及phpldapadmin管理工具

yum install -y epel-release

yum install -y phpldapadmin

rpm -qa | grep phpldapadmin

7.1、配置/etc/httpd/conf.d/phpldapadmin.conf允许从远程访问

修改以下文件:

vi /etc/httpd/conf.d/phpldapadmin.conf

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs

Alias /ldapadmin /usr/share/phpldapadmin/htdocs

修改为

Alias /phpldapadmin /usr/share/phpldapadmin/htdocs

Alias /ldapadmin /usr/share/phpldapadmin/htdocs

Order Deny,Allow

Allow from all

7.2、 第二处修改Apache主配置文件httpd.conf

vi /etc/httpd/conf/httpd.conf 102 # 103 # AllowOverride none 104 # Require all denied 105 # 106 Options Indexes FollowSymLinks AllowOverride None

注释掉102-105添加如下

Options Indexes FollowSymLinks

AllowOverride None

不然会报错

7、3、修改/etc/phpldapadmin/config.php配置用DN登录

vi /etc/phpldapadmin/config.php

第397行和398行

$servers->setValue(‘login’,‘attr’,‘dn’);

// $servers->setValue(‘login’,‘attr’,‘uid’);

2d5161f843dff1bdfd93648957e05d32.png

8、然后重启httpd服务

启动 [root@cdh-server1 ~]# service httpd start

ֹͣ [root@cdh-server1 ~]# service httpd stop

重启 [root@cdh-server1 ~]# systemctl restart httpd

查看状态 [root@cdh-server1 ~]# service httpd status

9、进入openladp

打开网页输入 http://ip/ladpadmin

输入帐号cn=admin,dc=baidu,dc=com

密码明文

f145b8a84bcddf6668f523143bf096f6.png

这篇关于centos 6.5 openldap php,Centos7.6 openldap部署的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/205486

相关文章

python管理工具之conda安装部署及使用详解

《python管理工具之conda安装部署及使用详解》这篇文章详细介绍了如何安装和使用conda来管理Python环境,它涵盖了从安装部署、镜像源配置到具体的conda使用方法,包括创建、激活、安装包... 目录pytpshheraerUhon管理工具:conda部署+使用一、安装部署1、 下载2、 安装3

k8s部署MongDB全过程

《k8s部署MongDB全过程》文章介绍了如何在Kubernetes集群中部署MongoDB,包括环境准备、创建Secret、创建服务和Deployment,并通过Robo3T工具测试连接... 目录一、环境准备1.1 环境说明1.2 创建 namespace1.3 创建mongdb账号/密码二、创建Sec

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

Python项目打包部署到服务器的实现

《Python项目打包部署到服务器的实现》本文主要介绍了PyCharm和Ubuntu服务器部署Python项目,包括打包、上传、安装和设置自启动服务的步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录一、准备工作二、项目打包三、部署到服务器四、设置服务自启动一、准备工作开发环境:本文以PyChar

centos7基于keepalived+nginx部署k8s1.26.0高可用集群

《centos7基于keepalived+nginx部署k8s1.26.0高可用集群》Kubernetes是一个开源的容器编排平台,用于自动化地部署、扩展和管理容器化应用程序,在生产环境中,为了确保集... 目录一、初始化(所有节点都执行)二、安装containerd(所有节点都执行)三、安装docker-

在Ubuntu上部署SpringBoot应用的操作步骤

《在Ubuntu上部署SpringBoot应用的操作步骤》随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一,Java作为一种跨平台的编程语言,具有广泛的应用场景,本... 目录一、部署准备二、安装 Java 环境1. 安装 JDK2. 验证 Java 安装三、安装 mys

Jenkins中自动化部署Spring Boot项目的全过程

《Jenkins中自动化部署SpringBoot项目的全过程》:本文主要介绍如何使用Jenkins从Git仓库拉取SpringBoot项目并进行自动化部署,通过配置Jenkins任务,实现项目的... 目录准备工作启动 Jenkins配置 Jenkins创建及配置任务源码管理构建触发器构建构建后操作构建任务

PHP执行php.exe -v命令报错的解决方案

《PHP执行php.exe-v命令报错的解决方案》:本文主要介绍PHP执行php.exe-v命令报错的解决方案,文中通过图文讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录执行phpandroid.exe -v命令报错解决方案执行php.exe -v命令报错-PHP War

若依部署Nginx和Tomcat全过程

《若依部署Nginx和Tomcat全过程》文章总结了两种部署方法:Nginx部署和Tomcat部署,Nginx部署包括打包、将dist文件拉到指定目录、配置nginx.conf等步骤,Tomcat部署... 目录Nginx部署后端部署Tomcat部署出现问题:点击刷新404总结Nginx部署第一步:打包