OpenLDAP配置web管理界面PhpLDAPAdmin服务-centos9stream

之前已经发了一篇关于centos9下面配置openldap多主高可用集群的内容,不会配置ldap集群的请参考:服务器集群配置LDAP统一认证高可用集群(配置tsl安全链接)-centos9stream-openldap2.6.2-CSDN博客

这里跟着前篇文章详细说明如何配置openldap的web管理界面PhpLDAPAdmin;

1、安装http及php、phpldapadmin

###安装必要的包,一般不用特别关注什么版本,直接安装就行,可以在所有server节点安装
###默认这个包应该在epel源,没有配置的可以使用  yum install epel-release -y 安装,不用多说了吧。
###已经安装了httpd或apache的就不用重复安装了。
yum install httpd php phpldapadmin -y

2、配置httpd

###配置httpd服务ip和端口,如果直接使用默认端口的不用改了,如果有多个端口的注意不要与现有http服务冲突
cd /etc/httpd/conf.d/##这里配置phpldapadmin的参数,注意查看一下php的路径,默认配置了phpldapadmin和ldapadmin两个根路径的别名,也就是说大家可以用   http://192.168.1.11/phpldapadmin或者http://192.168.1.11/ldapadmin访问web服务即可出现登陆界面
##下方Directory模块是配置目录权限,当然这里还可以配置用户访问的服务端口和ip,不会配置的大家尽量挑选一个没有其他服务的主机来配置这个服务吧。具体权限和安全问题就不在这里说了。欢迎大家关注我博客里的其他文章,这里主要是配置了允许访问的ip,allow from
vim phpldapadmin.conf
#
#  Web-based tool for managing LDAP servers
#
Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs<Directory /usr/share/phpldapadmin/htdocs><IfModule mod_authz_core.c># Apache 2.4Require localRequire ip 110.110.11.0/24Require ip 198.18.30.0/24</IfModule><IfModule !mod_authz_core.c># Apache 2.2Order Deny,AllowDeny from allAllow from 127.0.0.1Allow from 110.110.11.0/24Allow from 198.18.30.13</IfModule>
</Directory>

3、配置phpldapadmin

###配置根域加上密码的方式登陆,以下只显示需要修改的地方,大家执行查询修改
vim /etc/phpldapadmin/config.php#不同版本的文件可能不一样,我这里在453行;
$servers->setValue('login','attr','dn');
// $servers->setValue('login','attr','uid');  ##这里注释掉,选择dn方式登陆,当然改成cn也行,当然可以使用uid方式登陆,但前提是你配置了对应uid的操作和访问权限。#525行左右可配置是否可以让匿名用户登录,这个其实在openldap中本身可以进行设置,大家可以选配,需要配置的话去掉前面的注释符号“//”即可。
// $servers->setValue('login','anon_bind',true);###另外,还可以配置指定可登录的根域,tls安全链接的安全证书等,基本都是一些安全方面的配置,这里不一一说明了,自己可以修改配置然后访问测试,这个不影响已经配置好的ldap服务。// $servers->setValue('login','bind_id','');
#  $servers->setValue('login','bind_id','cn=Manager,dc=example,dc=com');/* Your LDAP password. If you specified an empty bind_id above, this MUST alsobe blank. */
// $servers->setValue('login','bind_pass','');
#  $servers->setValue('login','bind_pass','secret');/* Use TLS (Transport Layer Security) to connect to the LDAP server. */
// $servers->setValue('server','tls',false);/* TLS Certificate Authority file (overrides ldap.conf, PHP 7.1+) */
// $servers->setValue('server','tls_cacert',null);
#  $servers->setValue('server','tls_cacert','/etc/openldap/certs/ca.crt');/* TLS Certificate Authority hashed directory (overrides ldap.conf, PHP 7.1+) */
// $servers->setValue('server','tls_cacertdir',null);
#  $servers->setValue('server','tls_cacertdir','/etc/openldap/certs');/* TLS Client Certificate file (PHP 7.1+) */
// $servers->setValue('server','tls_cert',null);
#  $servers->setValue('server','tls_cert','/etc/pki/tls/certs/ldap_user.crt');

4、重启httpd服务

直接systemctl restart httpd即可。

systemctl restart httpd

5、界面操作

在可访问到服务的计算机上使用浏览器打开http://192.168.1.11/phpldapadmin

点击左侧的login,显示登录界面。

在登录界面直接输入管理根域和在ldap中设置的rootPW密码

如果已经设置禁止匿名用户登陆的话这里使用anonymous登陆应该是访问不了了

登陆成功后,左侧web界面应该就显示自己登陆的当前域下的情况了,可以点击+号展开查看已有账户。

6、导入功能import测试

这里测试一下创建用户组,当然其他配置的ldif文件或者配置内容都可以在这里导入进行创建或配置,条件是当前登陆的管理域账户有权限操作写入。

ldap可以批量导入如账户,直接点击左侧的import按钮会打开账户导入界面,可以直接选择ldif文件或者将编写号的ldif内容直接粘贴到对话框中,任选其一,然后点击Proceed按钮

这里直接粘贴编写内容测试一下

如果出现以下错误,这里很可能是因为当前的服务节点不是主节点,或者当前节点处于同步状态,所以应切换至主节点去操作

大家可以点击左侧的monitor按钮查看ldap集群的连接情况,这里面127.0.0.1一般就是当前phpldapadmin服务所在的本地server了, 其他ip表示是其他ldapserver的ip。

当然phpldapadmin可以设置连接其他server,但前提是有对应的远程操作权限,大约在/etc/phpldapadmin/config.php的第329行:

我一般不会改这里,最好是在每个server上都配置各自的phpldapamin服务,因为如果server的ldap服务down掉基本上其他服务可能都down了,所以还不如每个都独立后基于这些web服务再用haproxy配置高可用。

如果是可操作的正常节点,这里应该就导入成功了,刷新一下左侧的ou=Group即可查看到自己创建的用户组

7、web界面创建用户

前面使用导入功能可以直接操作ldif文件内容进行创建或导入,创建用户同样可以直接使用import功能,但这里主要展示交互界面通过web界面添加用户,

首先点击ou=people或者自己准备的其他域,或者先创建一个ou,再在对应ou下创建用户。我这里使用migrationtools的方式导入的系统账户,所以默认就有了ou=Group和ou=People两个ou,下面我们在ou=People下创建用户

首先:点击左侧dc下的ou=Peopel组,摊开下拉菜单,点击Create new entry here按钮,或者点击左侧的ou=People后再点击右侧的Create a child entry按钮

 弹出下面界面,选择Generic Ucer Account

弹出一下对话框,

对话框中,firstname,lastname以及commonname都可以按照自己的需求填写就行,

UserID这里要注意了,不要与现有系统的用户名重复,

输入密码的时候建议大家使用ldappasswd生成加密字符串填写,当然也可以用默认的clear也就是明文的方式填写, 如果使用加密字符串需要点击下拉箭头选择加密方式。

uid这里不让随便修改了,应该是防止重复,如果觉得不方便大家就是用前面的ldif文件导入方式创建吧,如果出现重复会给予警告, 当然我们也可以在openldap中设置起始uid的编号

GidNumber这里需要选择已有的用户组id,如果没有则需要先创建用户组再来创建用户。

home directory就是用户登陆后的默认文件夹,这里一般是/home/userid,可以自行指定,如果配置好ldap的登陆后,一般会自动创建这里指定的文件夹,如果发现登陆时没有对应文件夹应在系统中创建对应的文件夹。

login shell就是默认登陆时启动的shell服务,一般都是bash了。

然后再点击Create Object按钮

弹出再次确认的窗口,这里会让用户再确认一遍用户信息,确认后点击Commit提交创建,点击Cancel就取消掉了。

提交后会默认进入当前已创建用户的update界面,不想更新的话就可以忽略了,现在可以在系统中使用 id $uerid的命令查看用户id和用户组信息,也可以直接使用这里的user id 和password明文密码进行登陆了:

结束语

phpldapadmin的web界面还可以进行导出备份等操作,页面也可以进行用户、用户组、用户组织以及组映射的创建和维护操作,这里大家都可以自己进行测试,如果错误直接操作删除或者重新配置更新即可。

当然最大的好处还是在与ldap账户的统一管理。

后面大家有什么问题欢迎大家一起讨论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/199702.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在回调之间共享数据

可以在 App 中为 UI 组件编写回调函数&#xff0c;以指定用户与其交互时的行为方式。 在具有多个相互依赖的 UI 组件的 App 中&#xff0c;回调函数通常必须访问主 App 函数中定义的数据&#xff0c;或与其他回调函数共享数据。例如&#xff0c;如果创建一个具有列表框的 App&a…

.Net中Redis的基本使用

前言 Redis可以用来存储、缓存和消息传递。它具有高性能、持久化、高可用性、扩展性和灵活性等特点&#xff0c;尤其适用于处理高并发业务和大量数据量的系统&#xff0c;它支持多种数据结构&#xff0c;如字符串、哈希表、列表、集合、有序集合等。 Redis的使用 安装包Ser…

云计算赛项容器云2023搭建

部署容器云平台[5 分] 使 用 OpenStack 私 有 云 平 台 创 建 两 台 云 主 机 &#xff0c; 云 主 机 类 型 使 用 4vCPU/12G/100G 类型&#xff0c;分别作为 Kubernetes 集群的 Master 节点和 node 节点&#xff0c; 然后完成 Kubernetes 集群的部署&#xff0c;并完成 Istio …

【MySql】13- 实践篇(十一)

文章目录 1. 自增主键为什么不是连续的&#xff1f;1.1 自增值保存在哪儿&#xff1f;1.2 自增值修改机制1.2.1 自增值的修改时机1.2.2 自增值为什么不能回退? 1.3 自增锁的优化1.3.1 自增锁设计历史 2. Insert语句为何很多锁?2.1 insert … select 语句2.2 insert 循环写入2…

鸿蒙4.0真机调试踩坑

传言鸿蒙next版本将不再兼容Android&#xff0c;所以领导安排做下鸿蒙开发的调研工作。 鸿蒙开发指南其实已经非常的友好了。但是鸿蒙开发本身还是有些坑要踩&#xff0c;这篇文章主要讲了鸿蒙真机调试问题。 目前手上的真机为华为 nova6&#xff0c;处理器为麒麟990.鸿蒙系统…

AI绘画使用Stable Diffusion(SDXL)绘制三星堆风格的图片

一、前言 三星堆文化是一种古老的中国文化&#xff0c;它以其精湛的青铜铸造技术闻名&#xff0c;出土文物中最著名的包括青铜面具、青铜人像、金杖、玉器等。这些文物具有独特的艺术风格&#xff0c;显示了高度的工艺水平和复杂的社会结构。 青铜面具的巨大眼睛和突出的颧骨&a…

11.16~11.19绘制图表,导入EXCEL中数据,进行拟合

这个错误通常是由于传递给curve_fit函数的数据类型不正确引起的。根据你提供的代码和错误信息&#xff0c;有几个可能的原因&#xff1a; 数据类型错误&#xff1a;请确保ce_data、lg_data和product_data是NumPy数组或类似的可迭代对象&#xff0c;且其元素的数据类型为浮点数。…

C#,怎么修改(VS)Visual Studio 2022支持的C#版本

一些文字来自于 Microsoft . &#xff08;只需要读下面的红色文字即可&#xff01;&#xff09; 1 C# 语言版本控制 最新的 C# 编译器根据项目的一个或多个目标框架确定默认语言版本。 Visual Studio 不提供用于更改值的 UI&#xff0c;但可以通过编辑 .csproj 文件来更改值。…

基于SSM的学院网站设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;Vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

4.3 Windows驱动开发:监控进程与线程对象操作

在内核中&#xff0c;可以使用ObRegisterCallbacks这个内核回调函数来实现监控进程和线程对象操作。通过注册一个OB_CALLBACK_REGISTRATION回调结构体&#xff0c;可以指定所需的回调函数和回调的监控类型。这个回调结构体包含了回调函数和监控的对象类型&#xff0c;还有一个A…

Camtasia2024年破解版安装包如何下载?

作为一个互联网人&#xff0c;没少在录屏软件这个坑里摸爬滚打。培训、学习、游戏、影视解说……都得用它。这时候没个拿得出手的私藏软件&#xff0c;还怎么混&#xff1f;说实话&#xff0c;录屏软件这两年也用了不少&#xff0c;基本功能是有但总觉得缺点什么&#xff0c;直…

C进阶---文件操作

我们在日常使用电脑保存文件时&#xff0c;其目的就是为了便于以后查看、修改、更新等操作&#xff1b;保存在文件中可以使数据持久化&#xff0c;所以今天我们家里学习文件的相关操作。 一、文件 1.1什么是文件 磁盘上的文件是文件。 在程序设计中&#xff0c;文件一般分…

某60区块链安全之51%攻击实战学习记录

区块链安全 文章目录 区块链安全51%攻击实战实验目的实验环境实验工具实验原理攻击过程 51%攻击实战 实验目的 1.理解并掌握区块链基本概念及区块链原理 2.理解区块链分又问题 3.理解掌握区块链51%算力攻击原理与利用 4.找到题目漏洞进行分析并形成利用 实验环境 1.Ubuntu1…

基于RK3588全高端智能终端机器人主板

一、小尺寸板型设计 该款主板为小型板&#xff0c;尺寸仅为125*85mm&#xff0c;更小更紧凑&#xff0c;可完美适应各类高端智能自助终端&#xff1b; 二、八核高端处理器 采用RK3588S八核64位处理器&#xff0c;8nm LP制程&#xff0c;主频最高达2.4GHz&#xff0c;搭载Andr…

解决requests 2.28.x版本SSL错误:证书验证失败

1、问题背景 在使用requests 2.28.1版本时&#xff0c;我进行HTTP post传输报告负载时&#xff0c;由于SSL验证设置为True&#xff0c;请求失败&#xff0c;错误如下&#xff1a;(Caused by SSLError(SSLCertVerificationError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] certifi…

对OpenAI CEO奥特曼突然被解雇事件的一些分析

今天也来凑个热闹&#xff0c;说说OpenAI的事。本来不想写的&#xff0c;但是看到自媒体又开始胡说八道&#xff0c;所以根据我自己得到的消息和理解说一说我的看法&#xff0c;这篇文章要是有个小姐姐解说录成视频&#xff0c;那肯定火了&#xff0c;但是我现在没资源&#xf…

Oauth2认证及Spring Security Oauth2授权码模式

Oauth2认证 Oauth2简介 简介 第三方认证技术方案最主要是解决认证协议的通用标准问题&#xff0c;因为要实现跨系统认证&#xff0c;各系统之间要遵循一定的接口协议。 OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。同时&#xff0c;任何第三方都可以使…

本地/笔记本/纯 cpu 部署、使用类 gpt 大模型

文章目录 1. 安装 web UI1.1. 下载代码库1.2. 创建 conda 环境1.3. 安装 pytorch1.4. 安装 pip 库 2. 下载大模型3. 使用 web UI3.1. 运行 UI 界面3.2. 加载模型3.3. 进行对话 使用 web UI 大模型文件&#xff0c;即可在笔记本上部署、使用类 gpt 大模型。 1. 安装 web UI 1…

php一句话木马免杀

php一句话木马免杀 针对于php一句话木马做免杀&#xff1a; 利用php动态函数的特性&#xff0c;将危险函数拆分成字符&#xff0c;最终使用字符串拼接的方式&#xff0c;然后重新拼接&#xff0c;后加括号执行代码&#xff0c;并且可以使用花指令进行包装&#xff0c;如无限i…

C++ DAY06 c++多态

简介 一个事物的多种形态 , 简称多态 物的多态 同一个人在不同人面前展现是不同的 如 : 在我面前 在对象面前 在朋友面前 在父母面前 事的多态 吃饭 中国人 筷子 熟食 美国人 刀叉 7 分熟 日本人 筷子 生食 印度人 手 睡觉 中国人 床上 日本人 榻榻米 侧卧 平躺…