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

相关文章

CentOS 7 YUM源配置错误的解决方法

《CentOS7YUM源配置错误的解决方法》在使用虚拟机安装CentOS7系统时,我们可能会遇到YUM源配置错误的问题,导致无法正常下载软件包,为了解决这个问题,我们可以替换YUM源... 目录一、备份原有的 YUM 源配置文件二、选择并配置新的 YUM 源三、清理旧的缓存并重建新的缓存四、验证 YUM 源

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

ubuntu16.04如何部署dify? 在Linux上安装部署Dify的技巧

《ubuntu16.04如何部署dify?在Linux上安装部署Dify的技巧》随着云计算和容器技术的快速发展,Docker已经成为现代软件开发和部署的重要工具之一,Dify作为一款优秀的云原生应用... Dify 是一个基于 docker 的工作流管理工具,旨在简化机器学习和数据科学领域的多步骤工作流。它

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

SpringBoot配置Ollama实现本地部署DeepSeek

《SpringBoot配置Ollama实现本地部署DeepSeek》本文主要介绍了在本地环境中使用Ollama配置DeepSeek模型,并在IntelliJIDEA中创建一个Sprin... 目录前言详细步骤一、本地配置DeepSeek二、SpringBoot项目调用本地DeepSeek前言随着人工智能技