使用Ubuntu 18.04 LTS上用 LAMP 堆栈安装phpmyadmin

时间:2020-03-21 11:45:44  来源:igfitidea点击:

PHPMyAdmin是一种在PHP中写入的自由开放的基于Web的数据库管理工具。
它允许数据库管理员通过Web浏览器轻松地从本地或者远程系统管理单个和/或者多个数据库服务器。
这对那些对MySQL提示不舒服的人有用。
使用PHPMyAdmin,我们可以进行各种数据库管理任务,例如创建,编辑,重命名,删除数据库,导入和导出数据库,创建表,字段和字段,执行SQL命令和许多。
在本教程中,我们将在Ubuntu 18.04 LTS服务器操作系统上查看如何使用 LAMP 堆栈安装PHPMyAdmin。

使用Ubuntu 18.04 LTS上用 LAMP 堆栈安装phpmyadmin

在Ubuntu 18.04 LTS服务器上安装PHPMYADMIN之前,请确保如下链接中所述设置设置 LAMP 堆栈。

  • 在Ubuntu 18.04 LTS上安装Apache,MySQL,PHP(LAMP)堆栈

另请确保如上所述的"2.2更改MySQL Root User"的"2.2更改MySQL root用户"一节更改了MySQL root用户的密码身份验证方法。
如果要使用PHPMYADMIN等任何外部程序管理数据库服务器,则必须执行此操作。

设置 LAMP 堆栈后,启用"Universe"存储库,默认情况下禁用Ubuntu 18.04.
为此,运行:

$sudo add-apt-repository universe

现在是安装phpmyadmin的时候了。

要在Ubuntu 18.04上安装phpmyadmin,请运行:

$sudo apt update
$sudo apt install phpmyadmin php-mbstring php-gettext

现在,选择应该自动配置为运行phpmyadmin的Web服务器。
使用向上/向下箭头选择Web服务器,然后点击空格键键。
选择Web服务器后,我们将看到它面前的*(星)符号。
点击Tab键以选择确定,然后再次按Enter键继续。

点击进入继续。

选择是以为PHPMyAdmin配置数据库:

提供mysql应用程序密码phpmyadmin。

重新输入密码:

安装PHPMyAdmin后,启用MBString PHP扩展并重新启动Apache Service o更新如下所示的更改。

$sudo phpenmod mbstring
$sudo systemctl restart apache2

我们现在可以通过加载到Web浏览器中的Info.php文件来验证是否启用了MBString扩展名。

正如我们在上面的屏幕截图中看到,MBString模块已启用。

创建专用用户来访问PHPMyAdmin仪表板

安装PHPMyAdmin后,将在安装期间设置的管理密码自动创建一个名为"phpmyadmin"的数据库用户。
我们可以使用"phpmyadmin"用户或者MySQL root用户登录PHPMyAdmin仪表板。
但是,建议创建专用用户通过PHPMyAdmin Web界面管理数据库。

为此,请使用命令登录MySQL shell:

$mysql -u root -p

输入MySQL root密码。
我们现在将在mysql shell中。

输入以下命令以为phpmyadmin创建新的专用用户:

CREATE USER 'phpmyadminuser'@'localhost' IDENTIFIED BY 'password';

其中phpmyadmin是用于访问PHPMyAdmin仪表板的新用户。
phpmyAdminuser的密码是密码。
用自己替换这些值。

接下来使用命令为"phpmyadminuser"提供适当的权限:

GRANT ALL PRIVILEGES ON *.* TO 'phpmyadminuser'@'localhost' WITH GRANT OPTION;

最后退出mysql shell:

exit

我们现在创建了一个专用的用户(PHPMyAdminuser /密码),用于通过PHPMyAdmin Web界面管理数据库。
让我们继续前进并访问phpmyadmin仪表板。

访问phpmyadmin仪表板

打开Web浏览器并导航到http://ip-address/phpmyadmin或者http://domain/phpmyadmin。
我们应该看到phpmyadmin登录页面。
使用MySQL root用户或者我们在上一步中创建的新用户登录PhmyAdmin接口。

这是phpmyadmin仪表板的外观:

从现在开始,我们可以通过PHPMyAdmin Web界面管理数据库。

安全phpmyadmin

由于PHPMYADMIN是攻击者的一个简单目标,因此下一个推荐的任务是保护PHPYMYADMIN。
保护PHPMyAdmin免受未经授权访问的最常用方法是通过使用Apache的内置.htaccess身份验证和授权功能。

首先,通过编辑/phpmyadmin.conf文件,使得.htaccess文件覆盖。

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

如下所示,在<directory/usr/sharp/phpmyadmin>部分中添加"allowoverride所有"行。

<Directory /usr/share/phpmyadmin>
Options SymLinksIfOwnerMatch
DirectoryIndex index.php
AllowOverride All
[...]

保存并关闭文件。

重新启动Apache服务以更新使用命令的更改:

$sudo systemctl restart apache2

接下来,使用命令在/usr/share/phpmyadmin /目录中创建名为.htaccess的文件:

$sudo nano /usr/share/phpmyadmin/.htaccess

添加以下行:

AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user

保存并关闭文件。

现在,运行以下命令以创建新用户,例如onIrad:

$sudo htpasswd -c /etc/phpmyadmin/.htpasswd theitroad

用我们选择的任何用户替换'theitroad'。
我们将要求我们为新用户提供密码。
输入两次。

示例输出:

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

我们现在添加了另外的安全层来访问PHPMyAdmin Web界面。
从现在开始,每当我们尝试访问PHPMyAdmin Web界面时,系统会提示我们输入我们在上一步中配置的其他用户名及其密码。

输入正确的用户名和密码后,将重定向到实际的PHPMyAdmin身份验证登录页面。
只需输入数据库凭据即可访问仪表板。