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

相关文章

tomcat多实例部署的项目实践

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

SpringBoot配置Ollama实现本地部署DeepSeek

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

通过Docker Compose部署MySQL的详细教程

《通过DockerCompose部署MySQL的详细教程》DockerCompose作为Docker官方的容器编排工具,为MySQL数据库部署带来了显著优势,下面小编就来为大家详细介绍一... 目录一、docker Compose 部署 mysql 的优势二、环境准备与基础配置2.1 项目目录结构2.2 基

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域

Centos环境下Tomcat虚拟主机配置详细教程

《Centos环境下Tomcat虚拟主机配置详细教程》这篇文章主要讲的是在CentOS系统上,如何一步步配置Tomcat的虚拟主机,内容很简单,从目录准备到配置文件修改,再到重启和测试,手把手带你搞定... 目录1. 准备虚拟主机的目录和内容创建目录添加测试文件2. 修改 Tomcat 的 server.X

OpenManus本地部署实战亲测有效完全免费(最新推荐)

《OpenManus本地部署实战亲测有效完全免费(最新推荐)》文章介绍了如何在本地部署OpenManus大语言模型,包括环境搭建、LLM编程接口配置和测试步骤,本文给大家讲解的非常详细,感兴趣的朋友一... 目录1.概况2.环境搭建2.1安装miniconda或者anaconda2.2 LLM编程接口配置2

大数据spark3.5安装部署之local模式详解

《大数据spark3.5安装部署之local模式详解》本文介绍了如何在本地模式下安装和配置Spark,并展示了如何使用SparkShell进行基本的数据处理操作,同时,还介绍了如何通过Spark-su... 目录下载上传解压配置jdk解压配置环境变量启动查看交互操作命令行提交应用spark,一个数据处理框架

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)

《C#集成DeepSeek模型实现AI私有化的流程步骤(本地部署与API调用教程)》本文主要介绍了C#集成DeepSeek模型实现AI私有化的方法,包括搭建基础环境,如安装Ollama和下载DeepS... 目录前言搭建基础环境1、安装 Ollama2、下载 DeepSeek R1 模型客户端 ChatBo

Ubuntu 22.04 服务器安装部署(nginx+postgresql)

《Ubuntu22.04服务器安装部署(nginx+postgresql)》Ubuntu22.04LTS是迄今为止最好的Ubuntu版本之一,很多linux的应用服务器都是选择的这个版本... 目录是什么让 Ubuntu 22.04 LTS 变得安全?更新了安全包linux 内核改进一、部署环境二、安装系统