我们将安装 phpMyAdmin 在 Ubuntu18.04 上配合 Apache 一起工作.

在安装 phpMyAdmin 之前需要已经安装了LAMP栈并提供了web页面.

如果没有安装可以参照 Ubuntu 18.04上安装Apache,MySQL,PHP 来先安装.

1. 安装 phpMyAdmin

让我们从更新包列表开始,并在Ubuntu 18.04上安装phpMyAdmin。下面我们有两个用&&分隔的命令。第一个命令将更新包列表,以确保您获得phpMyAdmin的最新版本和依赖项。第二个命令将下载并安装phpMyAdmin。当要求继续时,按 y回车

$ sudo apt update && sudo apt install phpmyadmin

根据您的设置,phpMyAdmin包配置中以下屏幕的顺序可能有所不同。

如果提示您选择web服务器,请按SPACE键在apache2旁边放一个星号[*],然后按TAB键突出显示OK并按ENTER键.如下图:

回车后如下:

选择 Yes 并按 ENTER 来安装和配置数据库。

MySQL应用程序密码只在phpMyAdmin内部使用,用于与MySQL通信。您可以保留此空白,密码将自动生成。按回车键继续。

2. 测试 phpMyAdmin

现在,您应该能够通过访问服务器的域名或公共IP地址和 /phpMyAdmin来访问phpMyAdmin web界面。例如:http://example.com/phpmyadmin或http://192.168.1.10 phpmyadmin

如果你还没有一个域名或不知道你的IP,你可以通过下面命令找到:

$ sudo ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1'

第一次安装MySQL时,您需要设置根用户和密码。但是,根用户可能禁用远程登录。

如果您得到一个错误“用户' root ' @ ' localhost'的访问被拒绝”,您应该继续执行步骤3,为phpMyAdmin创建一个超级用户。

3. 创建 MySQL 用户

如果您不能以上面的 root 用户身份登录,您现在可以为phpMyAdmin创建一个超级用户帐户。

在终端,以 root 用户身份登录MySQL。您可能在第一次安装MySQL时创建了一个根密码,

或者密码是空白的,在这种情况下,您可以在提示输入密码时按 ENTER

$ sudo mysql -p -u root

现在用您选择的用户名添加一个新的MySQL用户。在本例中,我们将其称为 pmauser (php my admin user)

确保将 password_here 替换为您自己的密码(自己造一个密码)。

% 符号告诉MySQL允许该用户从远程的任何地方登录。如果你想提高安全性,你可以用一个IP地址来代替它。

CREATE USER 'pmauser'@'%' IDENTIFIED BY 'password_here';

我这里设置的密码是 123456 这个是弱密码(很容易就被猜到), 不建议大家使用这个密码.

现在,我们将向新用户pmauser授予超级用户权限。

GRANT ALL PRIVILEGES ON *.* TO 'pmauser'@'%' WITH GRANT OPTION;

现在退出MySQL。

exit

现在,您应该能够使用这个新用户帐户访问phpMyAdmin。

如果您想为phpMyAdmin设置一些额外的安全性,请继续下一步。

4. 模糊 phpMyAdmin URL

机器人和攻击者不断扫描web服务器,寻找默认的phpMyAdmin登录页面,因此建议您将URL更改为其他内容。

在本例中,我们将把它从 example.com/phpmyadmin 更改为 example.com/pmahidden

使用 vi 文本编辑器打开Apache的phpMyAdmin配置文件。(如果不习惯 vi, 推荐可视化文本编辑器 gedit )

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

将 Alias (别名)从 /phpmyadmin 更改为 /pmahidden - 您也可以将其更改为您想要的任何内容。

保存并退出 vi.

现在必须重新加载Apache服务,以使更改生效。

$ sudo service apache2 reload

您现在应该能够通过 example.com/pmahidden 访问 phpMyAdmin

5. 用 .htpasswd 进行保护

我们可以使用 .htpasswd 进一步保护 phpMyAdmin 登录页面。这又增加了一条抵御机器人和黑客的防线。

5.1 允许. htaccess 覆盖

要设置.htpasswd,我们必须首先更改phpMyadmin Apache配置文件,以允许.htaccess覆盖。

使用 vi 打开配置文件 phpmyadmin.conf

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

在 DirectoryIndex index.php 下面添加 AllowOverride All 如下图:

保存并且退出 vi

现在重新加载Apache服务。

$ sudo service apache2 reload

5.2 设置 .htpasswd

我们将使用 gedit 文本编辑器在 phpMyAdmin 安装目录中创建一个新的 .htaccess 文件。

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

粘贴以下内容到 .htaccess 文件.

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

点击 Save 按钮保存, 并点击关闭按钮退出.

现在,我们可以使用 htpasswd 工具生成 .htpasswd 文件。

在本例中,我们创建了一个名为pmauser (php my admin user)的新用户,尽管您可以将其更改为您想要的任何内容。

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

您将被要求输入一个新的密码两次(生成一个密码)。

完成之后, 现在您可以在浏览器中访问 phpMyAdmin, 现在应该会提示您输入登录细节。

参考:Installing phpMyAdmin for Apache on Ubuntu 18.04

Ubuntu 18.04上安装 phpMyAdmin的更多相关文章

  1. Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP

    1.安装 Apache $ sudo apt update && sudo apt install apache2 中间会遇到停顿询问是否继续, 输入 y 然后 回车. 2.测试 Ap ...

  2. 如何在Ubuntu 18.04上安装Pip

    一.简介: Pip是一个软件包管理系统,它简化了用Python编写的软件包(如Python包索引(PyPI)中的软件包)的安装和管理. 在Ubuntu 18.04上缺省没有安装Pip,但安装非常简单. ...

  3. 如何在Ubuntu 18.04上安装Django

    Django是一个免费的开源高级Python Web框架,旨在帮助开发人员构建安全,可扩展和可维护的Web应用程序. 根据您的需要,有不同的方法来安装Django.它可以使用pip在系统范围内安装或在 ...

  4. 如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器(转)

    如何在Ubuntu 18.04上安装和配置Apache 2 Web服务器 什么是Apache Web Server? Apache或Apache HTTP服务器是一个免费的开源Web服务器,由Apac ...

  5. 在Ubuntu 18.04上安装Tensorflow

    我们将经历几个阶段,安装cuda-9.0,cudnn和tensorflow cpu以及tensorflow gpu版本.最后我们将用cuda-9.0安装pytorch.在MARVEl电影中黑寡妇的“我 ...

  6. 如何在Ubuntu 18.04上安装Go

    如何在Ubuntu 18.04上安装Go 谢鸢发表于云计算教程系列订阅98 介绍 课程准备 第1步 - 安装Go 第2步 - 设置Go路径 第3步 - 测试您的安装 结论 介绍 Go是Google开发 ...

  7. 在Ubuntu 18.04上安装OpenCV 4(C ++和Python)

    OpenCV于11月20日发布了OpenCV-3.4.4和OpenCV-4.0.0.这些版本中有很多错误修复和其他更改.发布重点如下: OpenCV现在是C ++ 11库,需要符合C ++ 11标准的 ...

  8. 如何在Ubuntu 18.04上安装Apache Web服务器

    一. apt库安装 1.在终端输入更新检查命令,sudo apt-get update 2. 在更新完成后(如果不想检查更新,也可直接输入此步)输入:sudo apt-get install apac ...

  9. 在Ubuntu 18.04上安装Git

    步骤1.首先,通过运行以下命令确保您的系统和apt包列表完全更新: apt-get update -yapt-get upgrade -y 第2步.在Ubuntu 18.04上安装Git. 现在让我们 ...

随机推荐

  1. Linux 修改/etc/sudoers 可被任何修改,如何解决

    今天不小心,修改了/etc/sudoers的权限 改成了 777的权限, 于是每次使用sudo都会弹出 sudo:sudo /etc/sudoers is world writable sudo:no ...

  2. axios+vue实现动态渲染员工数据+数据是对象

    <style> table{ width: 600px; margin: 0 auto; text-align: center; border-collapse: collapse; /* ...

  3. selenium五十行代码自动化爬取淘宝

    先看一下代码,真的只是五十行: # coding=gbk from selenium import webdriver import time options = webdriver.ChromeOp ...

  4. centos7下安装php-memcached扩展

    -> https://blog.csdn.net/sinat_35861664/article/details/72831556 安装扩展进行编译时如果报错,则将 ./configure --w ...

  5. webpack-dev-server 不是内部或外部命令,也不是可运行的程序 解决方案

    我看了网上的 一些解决方案,说是webpack版本不对,但我按照提示操作后依然不行: 要先确认是否安装了webpack-dev-server,如果没有安装,安装便可以解决: 粗暴的解决方案是删除nod ...

  6. 【Java并发专题之三】Java线程互斥、协作原理

    (I)Java线程互斥原理之synchronized原理 从JDK5引入CAS原子操作,但没有对synchronized关键字做优化,而是增加了J.U.C.concurrent,concurrent包 ...

  7. macbook pro更换键盘的排线

    以下是拆机图解 很简单的 有点动手能力的都可以更换 另外附加淘宝上的链接 https://item.taobao.com/item.htm?spm=a1z09.2.0.0.68a12e8dYAiQIx ...

  8. 怎么做web接口测试

        这就需要开发提供的接口文档了,接口文档和功能测试的需求说明书的功能是一样的.包括:接口说明.调用的url,请求方式(get or post),请求参数.参数类型.请求参数说明,返回结果说明.有 ...

  9. vue数据更改视图不更新问题----深入响应式原理

    Vue响应式原理之官方解释 当你把一个普通的JavaScript对象传给Vue实例的data选项,Vue将遍历此对象所有的属性,并使用Object.defineProperty把这些属性全部转为get ...

  10. Netty中的ChannelPipeline源码分析

    ChannelPipeline在Netty中是用来处理请求的责任链,默认实现是DefaultChannelPipeline,其构造方法如下: private final Channel channel ...