在Debian 7上安装和保护phpMyAdmin的方法

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 在Debian 7上安装和保护phpMyAdmin的方法

phpMyAdmin

phpMyAdmin 是一个免费的 Web 软件,用于在 Web 上使用 MySQL。它为 MySQL 的功能提供了一个方便的可视化前端。

设置

在使用 phpMyAdmin 之前,您需要在服务器上安装 LAMP。如果您的服务器上没有 Linux、Apache、MySQL、PHP 栈,您可以在这里找到设置教程。

一旦您拥有用户和所需的软件,就可以开始在您的 VPS 上安装 phpMyAdmin!

安装 phpMyAdmin

安装 phpmyadmin 最简单的方法是通过 apt-get:

sudo apt-get install phpmyadmin

在安装过程中,phpMyAdmin 将引导您完成基本配置。一旦进程启动,按照以下步骤操作:

  • 选择 Apache2 作为服务器
  • 当询问是否要使用 dbconfig-common 配置数据库时选择 YES
  • 在提示时输入您的 MySQL 密码
  • 输入您想要用来登录 phpmyadmin 的密码

安装完成后,将 phpmyadmin 添加到 Apache 配置中。

sudo nano /etc/apache2/apache2.conf

将 phpmyadmin 配置添加到文件中。

Include /etc/phpmyadmin/apache.conf

重新启动 apache:

sudo service apache2 restart

然后您可以通过访问 youripaddress/phpmyadmin 来访问 phpmyadmin。屏幕应该看起来像这样。

安全性

不幸的是,旧版本的 phpMyAdmin 存在严重的安全漏洞,包括允许远程用户最终利用基础虚拟专用服务器上的 root。通过一个简单的过程,可以防止大部分这些攻击:使用 Apache 的本地用户/密码限制来锁定整个目录,这将阻止这些远程用户甚至尝试利用旧版本的 phpMyAdmin。

设置 .htaccess 文件

要设置这个,首先允许 .htaccess 文件在 phpmyadmin 目录中工作。您可以在 phpmyadmin 配置文件中完成这一点:

sudo nano /etc/phpmyadmin/apache.conf

在目录部分下,添加“AllowOverride All”行到“Directory Index”下面,使该部分看起来像这样:

<Directory /usr/share/phpmyadmin>

       Options FollowSymLinks

       DirectoryIndex index.php

       AllowOverride All

       [...]

配置 .htaccess 文件

有了允许的 .htaccess 文件,我们可以继续设置一个本地用户,需要登录才能访问 phpmyadmin 登录页面。

首先在 phpmyadmin 目录中创建 .htaccess 文件:

sudo nano /usr/share/phpmyadmin/.htaccess

然后在 .htaccess 文件中设置用户授权。复制并粘贴以下文本:

AuthType Basic

AuthName "Restricted Files"

AuthUserFile /path/to/passwords/.htpasswd

Require valid-user

下面是每行的简要解释:

  • AuthType: 这是用于检查密码的身份验证类型。密码通过 HTTP 检查,关键字 Basic 不应更改。
  • AuthName: 这是在密码提示中显示的文本。您可以在这里放任何东西。
  • AuthUserFile: 此行指定密码文件的服务器路径(我们将在下一步中创建)。
  • Require valid-user: 此行告诉 .htaccess 文件,只有在密码文件中定义的用户才能访问 phpMyAdmin 登录屏幕。

创建 htpasswd 文件

现在我们将继续创建有效用户信息。

首先创建一个 htpasswd 文件。使用 htpasswd 命令,并将文件放在您选择的任何目录中,只要它不能从浏览器访问即可。虽然您可以根据需要命名密码文件,但约定是将其命名为 .htpasswd。

sudo htpasswd -c /path/to/passwords/.htpasswd username

系统会提示您提供并确认密码。

一旦用户名和密码对保存,您可以看到密码已加密保存在文件中。

最后重新启动 apache:

sudo service apache2 restart

访问 phpMyAdmin

现在 phpMyAdmin 将更加安全,因为只有授权用户才能访问登录页面。访问 youripaddress/phpmyadmin 应该显示一个像这样的屏幕。

填写您生成的用户名和密码。登录后,您可以使用 MySQL 用户名和密码访问 phpmyadmin。


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
25天前
|
Ubuntu
ubuntu和debian 的安装包dpkg管理命令对安装包进行安装,查询,卸载
Ubuntu dpkg 软件包管理命令概览:安装、卸载、查看和配置软件包。包括解决依赖、强制卸载、列出及过滤已安装包、查看包详情等操作。
53 10
|
2月前
|
Oracle Java 关系型数据库
在 Debian 12 上安装 Java 21
在 Debian 12 上安装 Java 21
|
4月前
|
安全 Ubuntu Shell
深入挖掘Debian系统中安装Docker
【8月更文挑战第21天】在Debian系统中安装Docker需按步骤操作:首先确保软件包更新,执行`sudo apt update`并安装必要软件包支持HTTPS;接着添加Docker官方GPG密钥以验证包的完整性和安全性;然后设置Docker稳定版仓库,通过`tee`命令配置仓库文件;再更新软件包索引;最后安装Docker Engine并通过运行测试容器确认安装成功。此指南适用于多数Debian版本,如遇问题请查阅官方文档。
313 0
|
4月前
|
Ubuntu Linux 测试技术
下载ISO镜像的方法 Debian、Red Hat 、CentOS、Ubuntu、Kali Linux🌐
Debian、Red Hat、CentOS、Ubuntu与Kali Linux均为知名Linux发行版。下载Debian须访问官网并按计算机架构选ISO文件。Red Hat下载通常需订阅账户,可从官网登录后获取。CentOS可从官网或镜像站点下载,注意CentOS 8已停更。Ubuntu下载简便,官网直接选取版本及架构即可。Kali Linux专为安全测试设计,官网提供直接下载ISO镜像服务。
881 0
|
4月前
|
存储 Linux 开发工具
在Debian 8上安装Git的方法
在Debian 8上安装Git的方法
39 0
|
4月前
|
SQL 关系型数据库 Linux
如何在 Debian 8 上安装和使用 PostgreSQL 9
如何在 Debian 8 上安装和使用 PostgreSQL 9
59 0
|
4月前
|
安全 Linux 网络安全
如何在Debian 9上安装和配置VNC
如何在Debian 9上安装和配置VNC
109 0
|
4月前
|
网络协议 算法 网络安全
如何在 Debian Wheezy 上使用 Postfix 安装和配置 DKIM
如何在 Debian Wheezy 上使用 Postfix 安装和配置 DKIM
62 0
|
7月前
|
消息中间件 Kubernetes NoSQL
Debian11系统boost库安装
Debian11系统boost库安装
|
4月前
|
Kubernetes 应用服务中间件 nginx
debian11使用kubeadm安装k8s
debian11使用kubeadm安装k8s
下一篇
DataWorks