部署phpmyadmin并配置apache通过ldap验证

其实,配置apache使用ldap验证的例子,之前的PLA和LAM就是典型案例了,只不过这次想单独的配置apache和ldap的整合,另外一点就是windows上搭建LAMP的话,一般都会使用比如xampp之类的集成软件,一键安装统一管理Apache/MySQL/PHP,虽然Linux上我们一般不会采用类似的方法(构建LAMP也有各种各样的方法),但是phpmyadmin也是一个管理MySQL简单快捷的选择,所以就在此配置一下。

1、准备工作

/etc/init.d/iptables stop
iptables -L -n
setenforce 0
getenforce
echo "192.168.49.134   phpmyadmin" >>/etc/hosts

2、安装并配置Apache

yum -y install httpd
/etc/init.d/httpd start

这时,一般apache启动会有如下提示:

Starting httpd: httpd: Could not reliably determine the server‘s fully qualified domain name, using 192.168.49.134 for ServerName

可以通过sed添加ServerName,然后重启httpd服务来解决。

sed -i ‘/#ServerName/aServerName 192.168.49.134:80‘ /etc/httpd/conf/httpd.conf
/etc/init.d/httpd restart
chkconfig httpd on

3、安装并配置MySQL

yum -y install mysql mysql-server
mv /etc/my.cnf /etc/my.cnf.bak$(date +%F)
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
/etc/init.d/mysqld start
chkconfig mysqld on
mysql_secure_installation
#使用mysql_secure_installation脚本来给MySQL的root用户设置密码,也可以进行其他设置
/etc/init.d/mysqld restart
mysql -uroot -p123456
#测试MySQL root账户登录

4、安装并配置PHP

yum -y install php php-mysql php-gd libjpeg* php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-bcmath php-mhash libmcrypt
#这里把php以及其他和MySQL相关的模块一并安装了
[[email protected] ~]# php --version
PHP 5.3.3 (cli) (built: Aug 11 2016 20:33:53) 
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
#查看PHP版本
[[email protected] ~]# mysql -V
mysql  Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
#查看MySQL版本

5、下载phpmyadmin并配置目录权限

wget https://files.phpmyadmin.net/phpMyAdmin/4.0.10.17/phpMyAdmin-4.0.10.17-all-languages.zip --no-check-certificate
cp phpMyAdmin-4.0.10.17-all-languages.zip /var/www/html/
cd /var/www/html/
unzip phpMyAdmin-4.0.10.17-all-languages.zip 
mv phpMyAdmin-4.0.10.17-all-languages phpmyadmin
chown -R apache:apache phpmyadmin

6、浏览器测试phpmyadmin

浏览器中输入http://192.168.49.134/phpmyadmin/,出现phpmyadmin的登录界面,如下所示:

输入MySQL的root账号密码,执行。

登录成功,可以看到MySQL中的数据库、表、用户等信息,同时这里也显示出了服务器的相关信息。由于只是测试phpmyadmin的安装配置,并未对这些信息进行隐藏或者修改等配置,当然如果是生产环境,apache和MySQL都需要进行更详细的配置,这里就不多做说明了。

7、安装apahce的ldap模块mod_authz_ldap

yum -y install mod_authz_ldap

8、配置apache通过ldap进行认证

cp /etc/httpd/conf.d/authz_ldap.conf /etc/httpd/conf.d/authz_ldap.conf.bak$(date +%F)

先检查一下/etc/httpd/conf.d/authz_ldap.conf文件的内容

[[email protected] ~]# egrep -v "#|^$" /etc/httpd/conf.d/authz_ldap.conf

LoadModule authz_ldap_module modules/mod_authz_ldap.so

<IfModule mod_authz_ldap.c>

</IfModule>

然后编辑该文件,在<IfModule mod_authz_ldap.c>语句下面添加如下内容:

<Directory /var/www/html/phpmyadmin>  #这里定义那个目录需要使用ldap模块认证

AuthzLDAPMethod ldap

AuthzLDAPServer 192.168.49.138

AuthzLDAPUserBase ou=People,dc=contoso,dc=com

AuthzLDAPUserKey uid

AuthzLDAPUserScope base

AuthType Basic

AuthName "Test ldap auth"

require valid-user

</Directory>

[[email protected] ~]# diff /etc/httpd/conf.d/authz_ldap.conf.bak2016-09-13 /etc/httpd/conf.d/authz_ldap.conf

9a10,23

>    <Directory /var/www/html/phpmyadmin>

>       AuthzLDAPMethod ldap

>

>       AuthzLDAPServer 192.168.49.138

>       AuthzLDAPUserBase ou=People,dc=contoso,dc=com

>       AuthzLDAPUserKey uid

>       AuthzLDAPUserScope base

>

>       AuthType Basic

>       AuthName "Test ldap auth"

>       require valid-user

>

>    </Directory>

>

/etc/init.d/httpd restart

#最后重启httpd服务

9、测试apache使用ldap认证

打开浏览器,输入phpmyadmin的地址,发现这次并没有显示登陆界面,而是要求进行身份验证,输入ldap中的用户名和密码,登录。

成功登录之后,才显示phpmyadmin的登录界面,这里就可以使用MySQL的root用户登录了。注意,本文是配置apache使用ldap进行登录,并不是MySQL使用ldap登录,所以这里还是要输入MySQL的用户名密码登录,而使用ldap用户名密码验证的只是浏览器打开连接时的身份认证,如果无法通过身份验证就无法登录MySQL,即使知道root密码也没有办法,这也算是一种phpmyadmin管理MySQL加固的方案吧。

时间: 2024-07-30 10:59:04

部署phpmyadmin并配置apache通过ldap验证的相关文章

apache通过AD验证

## apache通过AD验证 #yum install httpd mod_authz_ldap#安装apahce的ldap模块yum install mod_authz_ldap -y #配置apache通过ldap进行认证cp /etc/httpd/conf.d/authz_ldap.conf /etc/httpd/conf.d/authz_ldap.conf.bak$(date +%F) egrep -v "#|^$" /etc/httpd/conf.d/authz_ldap.

centos6.5中部署Zeppelin并配置账号密码验证

centos6.5中部署Zeppelin并配置账号密码验证1.安装JavaZeppelin支持的操作系统如下图所示.在安装Zeppelin之前,你需要在部署的服务器上安装Oracle JDK 1.7或以上版本, 并配置好相应的JAVA_HOME环境变量.以CentOS为例,具体操作过程如下: a)下载并安装jdk-8u111-linux-x64.rpm # rpm -ivh jdk-8u111-linux-x64.rpm b)配置环境变量.在/etc/profile文件结尾添加: export

Centos7安装配置Apache+PHP+Mysql+phpmyadmin

转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl start httpd //启动apache systemctl stop httpd //停止apache systemctl restart httpd //重启apache systemctl enable httpd //设置apache开机启动 异常处理我再阿里云上配置并出现启动Apac

CentOS下Apache+SVN+LDAP的安装与配置

上班接近4个月了,在公司做配置管理工程师,主要是在Linux下对公司的源代码以及项目发布进行管理.4个月接触了好多新知识,也对各种工具的集成使用搞得云里来雾里去的,所以打算自己搭建一套环境,进行测试. 首先是Apache+SVN的安装与配置.本人使用Virtualbox创建了一个虚拟机,所以接下来的环境搭建均在虚拟机CentOS上实现 1.Apache的安装 网上有很多教程都是使用源码安装的方式,但安装起来稍显复杂,容易将像我这样的初学者搞晕,所以我就采用了yum工具(CentOS系统下是yum

管理员技术(五): 配置文档的访问权限、 配置附加权限、绑定到LDAP验证服务、配置LDAP家目录漫游

一.配置文档的访问权限 问题: 本例要求将文件 /etc/fstab 拷贝为 /var/tmp/fstab,并调整文件 /var/tmp/fstab的权限,满足以下要求: 1>  此文件的拥有者是 root       2> 此文件属于 root 组       3> 此文件对任何人都不可执行       4> 用户 natasha 能够对此文件执行读和写操作       5> 用户 harry 对此文件既不能读,也不能写       6> 所有其他用户(当前的和将来的

OSX系统下配置Apache+PHP+MySQL+Navicat

概述 OSX系统对于PHP运行非常友好,我们只需要进行简单的配置便可以开始进行使用,本篇文章将一步一步地介绍Apache.PHP和MySQL的安装与配置,为开始进行开发铺好路 Apache 启动Apache服务 在Mac系统中已经安装好了Apache服务,我们只需要通过如下方式启动即可直接使用 在终端中输入如下命令,启动Apache服务 sudo apachectl start 在终端中输入如下命令,查看Apache服务版本 sudo apachectl -v 在浏览器中输入如下网址,检查Apa

部署bugzilla(bugzilla+apache+mysql+linux)

工作原因,需要部署bugzilla.在此,容我新造个轮子.官方轮子:https://bugzilla.readthedocs.org/en/latest/installing/quick-start.html 一.准备工作 所需文件: bugzilla    版本bugzilla-5.0.2,传送门:https://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-5.0.2.tar.gz bugzilla模块依赖(非必要,如果gd模块不成功,需

Rancher 部署Grafana+项目监控并集成LDAP

业务服务暴露了prometheus的指标,现需要获取该指标值,并用grafana进行展示,并集成ldap验证登入grafana 1.启动监控 在rancher对应的业务的项目下启用监控,工具 -> 监控.在服务列表中能够找到两个服务,这两个服务都可以访问prometheus数据. http://access-prometheus http://expose-prometheus:8080 2.部署Grafana 镜像 grafana/grafana:6.5.1 密文:grafana GF_SEC

PhpMyAdmin的配置

今天,我们要说的是关于PhpMyAdmin的配置有关的内容.首先,我们来了解一下有关PhpMyAdmin基本知识. phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库.借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的汇入及汇出更为方便.其中一个更大的优势在于由于phpMyAdmin跟其他PHP程式一样在网页服务器上执行,但是您可以在任何地方使用这些程式产生