本教程适用于以下操作系统版本
- Ubuntu 24.04(Noble Numbat)
- Ubuntu 22.04(Jammy Jellyfish)
- Ubuntu 18.04(Bionic Beaver)
本页内容
- 准备工作
- 创建 MySQL/MariaDB 用户
- 通过 Ubuntu 软件源安装 phpMyAdmin
- 加固 phpMyAdmin 安装
- 测试 phpMyAdmin 安装
phpMyAdmin 是一款免费开源的 MySQL 服务器管理与维护工具。它允许你通过 Web 浏览器管理 MySQL 数据,你可以在浏览器上的统一仪表盘界面中管理数据库、数据表、列、索引、关系、用户、权限等。
借助 phpMyAdmin,你可以向 MySQL 服务器导入和导出数据。你可以将 CSV 和 SQL 数据导入到 MySQL 中,也可以将数据导出为多种格式,例如 CSV、SQL、XML、LaTeX、XML、PDF 以及 OpenDocument 文本与电子表格格式。
本教程将向你演示如何在 Ubuntu 24.04 上安装 phpMyAdmin。你将先安装 phpMyAdmin,然后通过 Apache 的 basic_auth 模块对其进行安全加固。
准备工作
在继续操作之前,请确认你具备以下条件:
- 一台 Ubuntu 24.04 服务器。
- 一个具有管理员权限的非 root 用户。
- 已安装 LAMP 环境(Linux、Apache、MySQL/MariaDB 和 PHP)。
创建 MySQL/MariaDB 用户
在安装 phpMyAdmin 之前,我们先创建一个专用的 MySQL/MariaDB 用户,用于通过 phpMyAdmin 管理数据库。该用户将拥有访问 MySQL/MariaDB 服务器上所有数据库的权限,因此请务必设置一个强密码。
使用以下 ' mysql ' 命令登录到你的 MySQL/MariaDB 服务器。在提示时输入你的 MySQL/MariaDB root 密码。
sudo mysql -u root -p
登录后,运行以下查询语句来创建一个新的 MySQL/MariaDB 用户。此处你将创建一个名为 ' newuser '、密码为 ' mystrongpassword ' 的用户。该用户将用于通过 phpMyAdmin 管理数据库。
CREATE USER newuser@localhost IDENTIFIED BY 'mystrongpassword';
GRANT ALL PRIVILEGES ON *.* TO newuser@localhost;
FLUSH PRIVILEGES;

现在通过以下查询语句验证用户 ' newuser '。请确保用户 ' newuser ' 能够访问 MySQL/MariaDB 服务器中的所有数据库 '*.*'。
SHOW GRANTS FOR newuser@localhost;
操作完成后输入 quit 退出。

通过 Ubuntu 软件源安装 phpMyAdmin
在 Ubuntu 上,phpMyAdmin 有两种安装方式:通过 Ubuntu 官方软件源安装,或从源代码手动安装。本节中,你将通过 Ubuntu 软件源安装 phpMyAdmin,这需要已安装 LAMP 环境(Linux、Apache、MySQL/MariaDB)。
首先,使用以下命令更新 Ubuntu 软件包索引。
sudo apt update

使用以下 ' apt info ' 命令查看 phpmyadmin 软件包信息。
sudo apt info phpmyadmin
如下图所示,phpMyAdmin 5.2.1 已在 Ubuntu universe/web 软件源中提供。安装 phpMyAdmin 软件包需要依赖 php-mysql 和 dbconfig-common 软件包。

现在使用以下 'apt install' 命令在 Ubuntu 服务器上安装 phpMyAdmin。输入 Y 确认安装。
sudo apt install phpmyadmin

将默认 Web 服务器选择为 ' apache2 ',然后点击 确定 。

选择 是(Yes),通过 dbconfig-common 为 phpMyAdmin 配置数据库。

现在输入 phpMyAdmin 用户的新密码,并重复输入一次。

重复输入你的密码:

安装完成后,你的 phpMyAdmin 安装目录应位于以下位置:
- /etc/phpmyadmin/ :这是 phpMyAdmin 的主配置目录。
- /usr/share/phpmyadmin :这是 phpMyAdmin 源代码所在的目录。
最后,打开你的 Web 浏览器并访问 http://192.168.5.30/phpmyadmin。如果安装成功,你将看到 phpMyAdmin 登录页面。
使用你创建的新 MySQL/MariaDB 用户登录,然后点击 登录(Login) 确认。

如果身份验证成功,你将看到如下所示的 phpMyAdmin 仪表盘:

加固 phpMyAdmin 安装
既然已经安装好 phpMyAdmin,接下来将通过更改默认安装路径并启用 Apache 的 basic_auth 模块来加固 phpMyAdmin。这将为你的 phpMyAdmin 增加一层新的身份验证,
首先,使用以下命令为 Apache Web 服务器启用 rewrite 模块。
sudo a2enmod rewrite
使用以下 nano 编辑器打开 phpMyAdmin 的默认 Apache 配置片段 ' /etc/phpmyadmin/apache.conf '。
sudo nano /etc/phpmyadmin/apache.conf
在文件顶部,修改 phpMyAdmin 的安装路径。本例中,将 phpMyAdmin 路径更改为 ' /padm '。
Alias /padm /usr/share/phpmyadmin
将选项 ' AllowOverride All ' 添加到 phpMyAdmin 的 '
<Directory /usr/share/phpmyadmin> ... ... AllowOverride All ... ... <Directory>
完成后,保存文件并退出编辑器。

现在使用以下 nano 编辑器在 phpMyAdmin 目录 '/usr/share/phpmyadmin/' 中创建一个新 .htaccess 文件。
sudo nano /usr/share/phpmyadmin/.htaccess
将以下配置写入文件。通过此配置,你可以利用 Apache 的 basic_auth 模块保护 phpMyAdmin 指令。
AuthType Basic AuthName "Restricted Files" AuthUserFile /etc/phpmyadmin/.htpasswd Require valid-user
完成后保存文件并退出编辑器。
接下来,运行以下命令生成用于基本身份验证的新密码文件 '/etc/phpmyadmin/.htpasswd'。本例中,你将创建第一个新用户 ' padm '。然后按提示输入密码并重复确认。
sudo htpasswd -c /etc/phpmyadmin/.htpasswd padm

现在运行以下命令来验证你的 Apache 配置。请确保语法正确,你将看到 'Syntax is OK' 的输出。
sudo apachectl configtest
测试 phpMyAdmin 安装
sudo systemctl restart apache2

测试你的 phpMyAdmin 安装
如果身份验证成功,你将看到 phpMyAdmin 登录页面;否则,你将看到未授权(Unauthorized)页面。
输入你的用户名和密码,然后点击 Sign In(登录)。

现在你将看到 phpMyAdmin 已运行在自定义路径 ' /padm ' 上。

至此,你已在 Ubuntu 24.04 服务器上完成 phpMyAdmin 的安装,并通过更改默认安装路径、启用 Apache basic-auth 模块加固了 phpMyAdmin,在访问 phpMyAdmin 登录页面之前增加了新的身份验证。
这种安装方式让你可以从任意虚拟主机或域名快速访问 phpMyAdmin。因此,如果你的域名已启用 HTTPS,你也可以通过安全的 HTTPS 访问 phpMyAdmin。

至此,你已在 Ubuntu 24.04 服务器上完成 phpMyAdmin 的安装,并通过更改默认安装、启用 Apache basic-auth(基础认证)模块加固了 phpMyAdmin——该模块会在访问 phpMyAdmin 登录页之前增加一道身份校验。
该安装方式可让你从任意虚拟主机或域名快速访问 phpMyAdmin。因此,如果你的域名已启用 HTTPS,也可以通过安全的 HTTPS 方式访问 phpMyAdmin。