phpMyAdmin是一个免费的,基于PHP的开源应用程序,旨在简化基于Web的界面上MySQL和MariaDB服务器的管理。

phpMyAdmin允许您管理MySQL数据库,用户帐户和特权,执行SQL语句,以多种数据格式导入和导出数据等等。

本教程描述了使用Apache Web服务器在Debian 9上安装和保护phpMyAdmin所需的步骤。

先决条件

在继续本教程之前,请确保满足以下要求:

  • 有无LAMP(Linux操作系统,Apache,MySQL和PHP)安装您的Debian服务器上。
  • 具有sudo特权用户身份登录。

尽管是可选的,但建议通过HTTPS访问phpMyAdmin安装。如果您的域尚未受SSL保护,则可以按照本指南进行操作,并使用“在Debian 9上进行加密”来保护Apache

安装phpMyAdmin

执行以下步骤在Debian 9上安装phpMyAdmin:

更新软件包索引并将系统软件包升级到最新版本:

sudo apt update && sudo apt upgrade

通过输入以下内容从默认Debian存储库中安装phpMyAdmin软件包:

sudo apt install phpmyadmin

安装程序将要求您选择应自动配置为运行phpMyAdmin的Web服务器,按Space,然后选择Enter

接下来,将询问您是否用于dbconfig-common设置数据库,选择Yes并点击Enter

输入phpMyAdmin的密码以在数据库中注册,选择OK,然后按Enter

确认密码,选择OK并按Enter

安装过程完成后,请重新启动Apache以使更改生效:

sudo systemctl restart apache2

创建管理MySQL用户

在运行MariaDB 10.1(及更高版本)的Debian系统中auth_socket,默认情况下,root用户被设置为使用身份验证方法。

auth_socket插件对通过Unix套接字文件从本地主机连接的用户进行身份验证。这意味着您不能通过提供密码来作为根身份验证。

我们将创建一个新的管理MySQL用户,而不是更改MySQL用户root的身份验证方法。该用户将具有与root用户相同的特权,并将被设置为使用mysql_native_password身份验证方法。

我们将使用该用户登录phpMyAdmin仪表板,并在MySQL或MariaDB服务器上执行管理任务。

首先以root用户身份登录到MySQL服务器:

sudo mysql

在MySQL Shell中执行以下命令,这将创建一个新的管理用户并授予适当的权限:

CREATE USER 'padmin'@'localhost' IDENTIFIED BY 'super-strong-password';
GRANT ALL PRIVILEGES ON *.* TO 'padmin'@'localhost' WITH GRANT OPTION;

我们命名了管理用户padmin。您可以使用任何喜欢的名称,只需确保设置一个强密码即可。

访问phpMyAdmin

要访问phpMyAdmin界面,请打开您喜欢的浏览器,然后输入服务器的域名或公共IP地址,然后输入/phpmyadmin

https://your_domain_or_ip_address/phpmyadmin

输入您先前创建的管理用户登录凭据,然后单击确定Go

登录后,您将看到phpMyAdmin仪表板,其外观如下所示:

保护phpMyAdmin

为了增加额外的安全性,我们将通过设置基本身份验证来密码保护phpMyAdmin目录。

首先,我们将使用htpasswdApache软件包随附的工具为用户创建一个密码文件。我们将.htpasswd文件存储在/etc/phpmyadmin目录中:

sudo htpasswd -c /etc/phpmyadmin/.htpasswd padmin

在此示例中,我们将创建一个名为的用户padmin。您可以选择任何用户名,它不必与MySQL管理员用户相同。

上面的命令将提示您输入并确认用户密码。

New password:
Re-type new password:
Adding password for user padmin

如果要添加其他用户,则可以使用不带-c标志的相同命令:

sudo htpasswd /etc/phpmyadmin/.htpasswd padmin2

下一步是将Apache配置为使用密码保护phpMyAdmin目录并使用该.htpasswd文件。

为此,请打开phpmyadmin.conf在phpMyAdmin安装过程中自动创建的文件:

sudo nano /etc/apache2/conf-available/phpmyadmin.conf

并编辑/插入以下以黄色突出显示的行:

/etc/apache2/conf-available/phpmyadmin.conf

<Directory /usr/share/phpmyadmin>
    Options  +FollowSymLinks +Multiviews +Indexes  # edit this line
    DirectoryIndex index.php

    AllowOverride None
    AuthType basic
    AuthName "Authentication Required"
    AuthUserFile /etc/phpmyadmin/.htpasswd
    Require valid-user

    <IfModule mod_php5.c>
    ...

保存并关闭文件,然后重新启动Apache以使更改生效:

sudo systemctl restart apache2

现在,在访问phpMyAdmin时,将提示您输入先前创建的用户的登录凭据:

https://your_domain_or_ip_address/phpmyadmin

输入基本身份验证后,将带您到phpMyAdmin登录页面,您需要在其中输入MySQL管理用户登录凭据。

/phpmyadmin别名更改为更唯一和更安全的名称也是一个好主意。

结论

恭喜,您已经在Debian 9服务器上成功安装了phpMyAdmin。现在,您可以开始创建MySQL数据库,用户和表,并执行各种MySQL查询和操作。

如有疑问,请在下面发表评论。

如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持