介绍
虽然可以从命令行完全管理MySQL数据库服务器,但是许多用户喜欢使用GUI界面,而PHPMyAdmin是最受欢迎的基于Web的MySQL管理工具。 PHPMyAdmin提供了一个易于使用的界面来管理MySQL实例的数据库,用户和表,PHPMyAdmin单击应用程序映像使您能够通过开始使用LAMP配置和PHPMyAdmin来节省时间。
创建您的Droplet
要开始使用PHPMyAdmin应用程序映像,请从控制面板创建一个新的Droplet,指定主机名和计划。
选择要创建新Droplet的区域...
与应用程序选项卡下
选择14.04的phpMyAdmin。
如果使用ssh键登录到你的Droplet,你可以在这里指定一个键。
现在点击
create
开始您的创作Droplet。
登录PHPMyAdmin
您的新PHPMyAdminDroplet可在启动后立即使用,但您需要通过SSH或使用Web控制台登录以访问您的MySQL根密码。 当您登录时,您将看到类似下面的消息:
-------------------------------------------------------------------------------------
Thank you for using DigitalOcean's LAMP/PHPMyAdmin Application.
Your PHPMyAdmin installation can be accessed at http://0.0.0.0/phpmyadmin
The details of your PHP installation can be seen at http://0.0.0.0/info.php
Your MySQL root user's password is gNv8yafpVZ
You are encouraged to run mysql_secure_installation to ready your server for production.
-------------------------------------------------------------------------------------
To delete this message of the day: rm -rf /etc/motd.tail
记下你的MySQL root密码,然后打开Web浏览器,浏览到http://
DROPLET_IP / phpMyAdmin的。 使用用户名
根 ,你的MySQL root密码登录。然后,您应该会看到类似下面的页面:
创建数据库
要创建一个新数据库,您可以单击“数据库”选项卡,您将在其中看到一个表单,允许您指定新数据库的名称。
创建用户
将root用户用于您的网络应用程序并不总是可取的。因此,您可能需要在MySQL服务器上创建一个新用户。如果您单击
用户选项卡上,您将看到添加用户的选项。
此链接将带您转到一个表单,您可以在其中添加用户并选择其权限。
安全PHPMyAdmin
我们能够使我们的phpMyAdmin接口运行起来相当容易。但是,我们还没有完成。因为它的无所不在,phpMyAdmin是攻击者的流行目标。我们需要确保应用程序安全,以防止未经授权的使用。 执行此操作的最简单的方法之一是在整个应用程序前放置一个网关。我们可以使用Apache的内置做到这一点
.htaccess
验证和授权功能。
将Apache配置为允许.htaccess覆盖
首先,我们需要启用使用
.htaccess
通过编辑我们的Apache配置文件,文件覆盖。 我们将编辑已放置在我们的Apache配置目录中的链接文件:
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
我们需要添加一个
AllowOverride All
的内指令
<Directory /usr/share/phpmyadmin>
配置文件的部分,如下所示:
<Directory /usr/share/phpmyadmin>
Options FollowSymLinks
DirectoryIndex index.php
AllowOverride All
. . .
添加此行后,保存并关闭文件。 要实现所做的更改,请重新启动Apache:
sudo service apache2 restart
创建.htaccess文件
现在,我们已经启用
.htaccess
使用我们的应用,我们需要创建一个实际执行一些安全。 为了成功,必须在应用程序目录中创建文件。我们可以创建必要的文件,并在我们的文本编辑器中使用root权限打开它:
sudo nano /usr/share/phpmyadmin/.htaccess
在此文件中,我们需要输入以下信息:
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user
让我们来看看这些行的含义:
- AuthType选项基本 :该行指定,我们正在实施的认证类型。此类型将使用密码文件实施密码认证。
- AuthName指令 :设定身份验证对话框中的消息。您应该保留此通用名称,以便未经授权的用户不会获得有关受保护的任何信息。
- 的AuthUserFile:这个设置要用于身份验证的密码文件的位置。这应该在正在提供的目录之外。我们将很快创建此文件。
- 需要有效的用户 :指定只有认证用户应能使用这些资源。这是什么实际阻止未经授权的用户进入。
完成后,保存并关闭文件。
创建用于验证的.htpasswd文件
现在,我们已经通过使用指定为我们的密码文件的位置
AuthUserFile
我们内部指令
.htaccess
文件,我们需要创建这个文件。 我们实际上需要一个额外的包来完成这个过程。我们可以从我们的默认存储库安装:
sudo apt-get update
sudo apt-get install apache2-utils
随后,我们将有
htpasswd
工具可用。 我们选择的密码文件的位置是“
/etc/phpmyadmin/.htpasswd
”。让我们创建此文件,并通过键入以下内容将其传递给初始用户:
sudo htpasswd -c /etc/phpmyadmin/.htpasswd username
系统将提示您选择并确认正在创建的用户的密码。然后,使用您输入的哈希密码创建文件。 如果你想输入一个额外的用户,你需要做这样
没有
-c
标志,就像这样:
sudo htpasswd /etc/phpmyadmin/.htpasswd additionaluser
现在,当您访问您的phpMyAdmin子目录时,系统将提示您输入刚才配置的其他帐户名和密码:
http://domain_name_or_IP/phpmyadmin
输入Apache身份验证后,您将进入常规的phpMyAdmin身份验证页面输入其他凭据。这将增加一个额外的安全层,因为phpMyAdmin过去遭受了漏洞。
结论
您现在应该有一个配置和保护PHPMyAdmin实例和MySQL数据库准备使用。由于您的Droplet包含一个完整的LAMP可以很容易地通过将文件放置在部署Web内容到您的Droplet
/var/www/html
目录。有关使用PHPMyAdmin的更多信息可以在PHPMyAdmin项目的官方文档中找到。