phpMyAdmin是一个开放源代码PHP应用程序,旨在通过基于Web的界面处理MySQL和MariaDB服务器的管理。
phpMyAdmin允许您管理MySQL数据库,用户帐户和特权,执行SQL语句,以各种数据格式导入和导出数据等等。
本教程介绍了在Ubuntu 18.04上使用Apache安装和保护phpMyAdmin的必要步骤。
先决条件
在继续本教程之前,请确保满足以下先决条件:
- 已在Ubuntu服务器上安装了 LAMP(Linux,Apache,MySQL和PHP)。
- 以具有sudo特权的用户身份登录 。
尽管不是必需的,但建议通过HTTPS访问phpMyAdmin安装。如果您的域尚未受SSL保护,则可以按照本指南进行操作,并在Ubuntu 18.04上使用Let's Encrypt保护 Apache。
安装phpMyAdmin
要在Ubuntu 18.04服务器上安装phpMyAdmin,请按照以下步骤操作:
更新程序包索引并将系统程序包升级到最新版本:
sudo apt update && sudo apt upgrade
使用以下命令从默认的Ubuntu存储库安装phpMyAdmin软件包:
sudo apt install phpmyadmin
安装程序将提示您选择应自动配置的Web服务器要运行phpMyAdmin,请按Space
,然后按Enter
,选择apache。
接下来,系统将询问您是否使用dbconfig-common
设置数据库,选择Yes
并点击Enter
。
输入密码以使phpMyAdmin在数据库中注册,选择OK
,然后按Enter
。
将提示您确认密码,输入相同的密码,选择OK
,然后按Enter
。
安装过程完成后,重新启动Apache更改生效:
sudo systemctl restart apache2
创建一个管理MySQL用户
在运行MySQL 5.7(及更高版本)的Ubuntu系统中,默认情况下,root用户设置为使用auth_socket
身份验证方法。
auth_socket
插件对通过Unix套接字文件从本地主机连接的用户进行身份验证。这意味着您无法通过提供密码来认证为根用户。
我们将创建一个新的管理MySQL用户,而不是更改MySQL用户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目录。
首先,我们将使用Apache软件包随附的htpasswd
工具为用户创建密码文件。我们将.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期间自动创建的phpmyadmin.conf
文件:
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
并编辑/插入以下行:
/etc/apache2/conf-available/phpmyadmin.conf
Options +FollowSymLinks +Multiviews +Indexes # edit this line DirectoryIndex index.php
AllowOverride None
AuthType basic
AuthName "Authentication Required"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user
...
保存并关闭文件,然后重新启动Apache以使更改生效:
sudo systemctl restart apache2
现在,在访问phpMyAdmin时,将提示您输入先前创建的用户的登录凭据:
https://your_domain_or_ip_address/phpmyadmin
输入基本身份验证后,将转到phpMyAdmin登录页面,您需要在其中输入MySQL管理用户登录凭据。
最好将/phpmyadmin
别名更改为更独特和安全的名称。
结论
恭喜,您已经在Ubuntu 18.04服务器上成功安装了phpMyAdmin。您现在可以开始创建MySQL数据库,用户和表并执行各种MySQL查询和操作。
如果您有任何疑问,请在下面发表评论。