Centos7.9安装phpldapadmin

news/2025/3/1 7:31:40/文章来源:https://www.cnblogs.com/bigcat26/p/18679958

@

目录
  • 一、背景
  • 二、正文
    • 2.1 安装phpldapadmin
    • 2.4 登录phpldapadmin界面
  • 三、安装途中可能碰到的报错
    • 错误场景1:执行步骤“安装phpldapadmin”执行命令:yum install -y phpldapadmin时报错
    • 错误场景2:安装phpldapadmin完成后,apache启动报错,执行启动命令systemctl start httpd、systemctl restart httpd、systemctl restart httpd.service报错
  • 本人其他相关文章链接

一、背景

亲测可用,之前搜索了很多博客,啥样的都有,就是不介绍报错以及配置用处,根本不懂照抄那些配置是干啥的,稀里糊涂的按照博客搭完也跑不起来,因此记录这个。

项目背景:公司项目当前采用http协议+shiro+mysql的登录认证方式,而现在想支持ldap协议认证登录然后能够访问自己公司的项目网站。

举例说明:假设我们公司有自己的门户网站,现在我们收购了一家公司,他们数据库采用ldap存储用户数据,那么为了他们账户能登陆我们公司项目所以需要集成,而不是再把他们的账户重新在mysql再创建一遍,万一人家有1W个账户呢,不累死了且也不现实啊。

需要安装openldap+kerberos,且ldap和kerberos安装在同一台服务器上,当前版本如下:

  • centos 7.9
  • openldap 2.4.44
  • phpldapadmin 1.2.5
  • 服务器IP:10.110.38.162
  • Kerberos :Kerberos 5 release 1.15.1

由于openldap都安装了,但是没有可视化客户端看起来也不方便呀,所以该文章就是解决可视化客户端查看的问题。

二、正文

2.1 安装phpldapadmin

ldap装好后,下面安装web界面phpldapadmin。
注意: yum安装时,会自动安装apache和php的依赖。
注意: phpldapadmin很多没更新了,只支持php5,如果你服务器的环境是php7,则会有问题,页面会有各种报错。

yum install -y phpldapadmin# 修改apache的phpldapadmin配置文件
# 修改如下内容,放开外网访问,这里只改了2.4版本的配置,因为centos7 默认安装的apache为2.4版本。所以只需要改2.4版本的配置就可以了
# 如果不知道自己apache版本,执行 rpm -qa|grep httpd 查看apache版本vim /etc/httpd/conf.d/phpldapadmin.conf
-----------------------------------------------------------------<IfModule mod_authz_core.c># Apache 2.4Require all granted</IfModule>
-----------------------------------------------------------------# 修改配置用DN登录ldap
vim /etc/phpldapadmin/config.php
-----------------------------------------------------------------
# 398行,默认是使用uid进行登录,我这里改为cn,也就是用户名
$servers->setValue('login','attr','cn');# 460行,关闭匿名登录,否则任何人都可以直接匿名登录查看所有人的信息
$servers->setValue('login','anon_bind',false);# 519行,设置用户属性的唯一性,这里我将cn,sn加上了,以确保用户名的唯一性
$servers->setValue('unique','attrs',array('mail','uid','uidNumber','cn','sn'));
-----------------------------------------------------------------# 启动apache
systemctl start httpd
systemctl restart httpd
systemctl restart httpd.service

2.4 登录phpldapadmin界面

http://10.110.38.162:8080/phpldapadmin/
其中cn:admin 密码:123456

三、安装途中可能碰到的报错

错误场景1:执行步骤“安装phpldapadmin”执行命令:yum install -y phpldapadmin时报错

错误原因:是因为使用yum搜索某些rpm包,找不到包是因为CentOS是RedHat企业版编译过来的,去掉了所有关于版权问题的东西。安装EPEL后可以很好的解决这个问题。EPEL(Extra Packages for Enterprise Linux )即企业版Linux的扩展包,提供了很多可共Centos使用的组件,安装完这个以后基本常用的rpm都可以找到。

解决方案

执行命令:
yum localinstall http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
再执行
yum -y install phpldapadmin

错误场景2:安装phpldapadmin完成后,apache启动报错,执行启动命令systemctl start httpd、systemctl restart httpd、systemctl restart httpd.service报错

详细错误

May 07 10:10:15 localhost.localdomain dbus[580]: [system] Successfully activated service 'org.freedesktop.problems'
May 07 10:12:34 localhost.localdomain kernel: perf: interrupt took too long (16513 > 15557), lowering kernel.perf_event_max_sample_rate to 12000
May 07 10:13:48 localhost.localdomain polkitd[617]: Registered Authentication Agent for unix-process:5169:404183 (system bus name :1.220 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 07 10:13:52 localhost.localdomain polkitd[617]: Operator of unix-process:5169:404183 successfully authenticated as unix-user:root to gain ONE-SHOT authorization for action org.freedesktop.systemd1.manage-units for system-bus-name::1.221 [systemctl start httpd] (owne
May 07 10:13:52 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
-- Subject: Unit httpd.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit httpd.service has begun starting up.
May 07 10:13:52 localhost.localdomain httpd[5186]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message
May 07 10:13:52 localhost.localdomain httpd[5186]: (98)Address already in use: AH00073: make_sock: unable to listen for connections on address [::]:80
May 07 10:13:52 localhost.localdomain httpd[5186]: (98)Address already in use: AH00073: make_sock: unable to listen for connections on address 0.0.0.0:80
May 07 10:13:52 localhost.localdomain httpd[5186]: no listening sockets available, shutting down
May 07 10:13:52 localhost.localdomain httpd[5186]: AH00015: Unable to open logs
May 07 10:13:52 localhost.localdomain systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
May 07 10:13:52 localhost.localdomain systemd[1]: Failed to start The Apache HTTP Server.
-- Subject: Unit httpd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit httpd.service has failed.
-- 
-- The result is failed.
May 07 10:13:52 localhost.localdomain polkitd[617]: Unregistered Authentication Agent for unix-process:5169:404183 (system bus name :1.220, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)
May 07 10:13:52 localhost.localdomain systemd[1]: Unit httpd.service entered failed state.
May 07 10:13:52 localhost.localdomain systemd[1]: httpd.service failed.
May 07 10:13:58 localhost.localdomain su[5193]: (to root) zws on pts/0
May 07 10:13:58 localhost.localdomain su[5193]: pam_unix(su:session): session opened for user root by zws(uid=1000)
May 07 10:13:58 localhost.localdomain dbus[580]: [system] Activating service name='org.freedesktop.problems' (using servicehelper)
May 07 10:13:58 localhost.localdomain dbus[580]: [system] Successfully activated service 'org.freedesktop.problems'
May 07 10:14:12 localhost.localdomain polkitd[617]: Registered Authentication Agent for unix-process:5232:406549 (system bus name :1.226 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
May 07 10:14:12 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
-- Subject: Unit httpd.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit httpd.service has begun starting up.
May 07 10:14:12 localhost.localdomain httpd[5239]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 'ServerName' directive globally to suppress this message
May 07 10:14:12 localhost.localdomain httpd[5239]: (98)Address already in use: AH00073: make_sock: unable to listen for connections on address [::]:80
May 07 10:14:12 localhost.localdomain httpd[5239]: (98)Address already in use: AH00073: make_sock: unable to listen for connections on address 0.0.0.0:80
May 07 10:14:12 localhost.localdomain httpd[5239]: no listening sockets available, shutting down
May 07 10:14:12 localhost.localdomain httpd[5239]: AH00015: Unable to open logs
May 07 10:14:12 localhost.localdomain systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
May 07 10:14:12 localhost.localdomain systemd[1]: Failed to start The Apache HTTP Server.
-- Subject: Unit httpd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit httpd.service has failed.
-- 
-- The result is failed.
May 07 10:14:12 localhost.localdomain systemd[1]: Unit httpd.service entered failed state.
May 07 10:14:12 localhost.localdomain systemd[1]: httpd.service failed.
May 07 10:14:12 localhost.localdomain polkitd[617]: Unregistered Authentication Agent for unix-process:5232:406549 (system bus name :1.226, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)

错误原因:nginx和apache默认端口都是80,因为nginx得用不能随意修改,所以只能考虑修改apache端口号。

解决方案:修改apache端口号即可,比如改为8080。
修改apache端口号文件所在路径:/etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf

修改完成后执行命令即可。

systemctl start httpd
systemctl restart httpd
systemctl restart httpd.service

本人其他相关文章链接

1.Centos7.9安装openldap
2.Centos7.9安装kerberos
3.Openldap集成Kerberos
4.Centos7.9安装phpldapadmin
5.java连接ldap实现用户查询功能
6.java连接kerberos用户认证
7.javax.security.auth.login.LoginException: Unable to obtain password from user
8.javax.security.auth.login.LoginException: null (68)
9.javax.security.auth.login.LoginException: Message stream modified (41)
10.javax.security.auth.login.LoginException: Checksum failed
11.javax.security.auth.login.LoginException: No CallbackHandler available to garner authentication info
12.javax.security.auth.login.LoginException: Cannot locate KDC
13.javax.security.auth.login.LoginException: Receive timed out
14.java: 无法访问org.springframework.context.ConfigurableApplicationContext
15.LDAP: error code 34 - invalid DN
16.LDAP: error code 32 - No Such Object
17.java: 无法访问org.springframework.ldap.core.LdapTemplate
18.windows server2016搭建AD域服务器
19.java连接AD(Microsoft Active Directory)模拟用户登录认证

重要信息

  • 官网:https://ais.cn/u/vEbMBz


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

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

相关文章

数据库密码安全修改:保护织梦网站账户安全的黄金法则

严格权限控制:仅授予最小化权限给真正需要访问数据库的人,避免不必要的暴露风险。定期清理过期账号,防止非法入侵。 日志记录完善:开启详细的日志记录功能,记录下每一次登录、退出、增删改查等关键事件。一旦发现问题可以迅速定位原因并采取相应措施。步骤 描述备份数据优…

为什么网站后台连接不了并报错?

当您发现网站后台无法连接并报错时,可能是由多种原因引起的。为了有效解决问题,我们需要从多个角度进行排查和优化。以下是详细的解决方案: 一、检查数据库连接数据库配置:确认数据库配置文件(如config.php)中的连接参数是否正确。 包括数据库主机名、端口、用户名、密码…

为什么设置了自定义错误页面后无法登录网站后台

设置自定义错误页面后无法登录网站后台是一个常见的问题,通常由配置不当或冲突引起。要解决这个问题,我们需要仔细检查相关配置文件,并确保各个组件之间的兼容性。以下是详细的排查和解决方法: 一、检查自定义错误页面配置配置文件位置:根据服务器类型,自定义错误页面的配…

如何迁移服务器数据并确保新旧服务器上的数据一致?

在业务扩展或更换服务器时,迁移服务器数据是一项关键任务,确保新旧服务器上的数据一致至关重要。以下是详细的迁移步骤和注意事项: 一、准备阶段备份现有数据:在迁移之前,务必对现有服务器上的所有重要数据进行完整备份。这包括数据库、网站文件、配置文件等。 使用压缩工…

云主机升级后网站访问速度变慢的原因及解决方案

当您完成云主机的升级后,如果发现网站的访问速度明显变慢,可能由多种因素引起。首先需要明确的是,升级本身并不会直接导致访问速度下降;然而,某些配置不当或其他外部因素确实会影响最终的表现。以下是几个常见的原因及其对应的解决方法: 1. 页面资源加载问题现象:某些第…

宝塔面板无法登录怎么办?

当您遇到无法登录宝塔面板的情况时,可能是由于多种原因引起的,包括但不限于端口不通、服务未启动、磁盘空间不足等。为了快速恢复宝塔面板的正常使用,请按照以下步骤进行排查和修复: 1. 检查端口连通性 首先,确认服务器的8888端口是否对外网开放。可以使用在线端口检测工具…

公司网站数据修改流程图

在公司网站上,数据的修改需要遵循一定的流程,以确保数据的准确性和一致性。如何绘制一个清晰的公司网站数据修改流程图? 解决方案:确定流程步骤:首先,明确数据修改的具体步骤。通常包括需求分析、数据备份、数据修改、测试、发布和监控等环节。 选择绘图工具:选择一个合…

织梦CMS系统中如何正确设置前台网站地址以确保SEO友好性

织梦(DedeCMS)是一款广泛使用的开源内容管理系统,但在实际应用过程中,很多用户不清楚如何正确配置前台网站地址,从而影响了SEO效果。正确的URL设置不仅能提升用户体验,还有助于搜索引擎更好地抓取和索引网站内容。 解决方案确定唯一入口:确保整个网站只有一个主域名作为…

数据库管理工具版本是否需要更新

您好,当您在使用数据库管理工具时遇到“索引超出了数组界限”或“前缀和后缀名无效”的错误提示,这可能是由于工具版本过旧或兼容性问题引起的。为了帮助您更好地理解和解决这个问题,以下是详细的分析和建议:工具版本检查:首先,确认当前使用的数据库管理工具版本是否是最…

【推荐】一款开源且成熟的OA协同办公系统,自带低代码开发功能!

项目介绍 今天给大家推荐一款开源且拥有成熟的OA办公系统功能,自带低代码开发平台,可以快速搭建OA系统、人事系统、CRM系统、办公用品系统、项目管理系统、合同管理系统等,让你可以快速上手、快速实施、快速交付。 项目技术栈基于JAVA开发,支持多种数据库,包括MySQL、Post…

宝塔安装nps内网穿透服务

安装Nps内网穿透之前,需要先购买一台服务器,我是选择的雨云服务器!他家 服务器相对来说既稳定又便宜,关键是还能选择大带宽!对于选择搭建内网穿透的同学来说非常有优势,最起码速度会非常快。我选择的他们家湖北十堰机房,带宽50M上传100M下载。并且如果你选择搭建内网穿透…

如何解决 MSSQL 数据库导入过程中遇到的问题

在将 MSSQL 数据库从旧服务器迁移到新服务器的过程中,遇到了导入失败的问题。尽管已经成功上传了备份文件,但在尝试恢复数据库时却遇到了各种错误提示。 解决方案:验证备份文件完整性:首先确认备份文件本身没有损坏。可以通过在原服务器上先还原一次备份文件来验证其有效性…