我们将安装 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. 1.Python网络编程_UDP(简略版)

    # -*- coding: utf-8 -*- #2019-11-24 import socket def recv(): udp_socket=socket.socket(socket.AF_INE ...

  2. Python自动化运维之高级函数

    本帖最后由 陈泽 于 2018-6-20 17:31 编辑 一.协程 1.1协程的概念 协程,又称微线程,纤程.英文名Coroutine.一句话说明什么是线程:协程是一种用户态的轻量级线程.(其实并没 ...

  3. java中的字符串二

    public class TestString { public static void main(String[] args) { // TODO Auto-generated method stu ...

  4. Redis缓存策略

    常用策略有“求留余数法”和“一致性HASH算法” redis存储的是key,value键值对 一.求留余数法 使用HASH表数据长度对HASHCODE求余数,余数作为索引,使用该余数,直接设置或访问缓 ...

  5. 创建Djongo需要改url的地方:

    from django.conf.urls import urlfrom django.contrib import adminfrom app01 import viewsurlpatterns = ...

  6. angular 多路由模块新建组件的方法

    More than one module matches. Use skip-import option to skip importing the component into the closes ...

  7. 9.Go-反射、日志和线程休眠

    9.1反射 在Go语言标准库中reflect包提供了运行时反射,程序运行过程中动态操作结构体 当变量存储结构体属性名称,想要对结构体这个属性赋值或查看时,就可以使用反射 反射还可以用作判断变量类型 整 ...

  8. 解决Warning: Permanently added ' 192.168.1.230'(RSA) to the list of known hosts.

    前提 当我在刚安装的Red Hat Linux5.x系统中进行ssh 192.168.1.230 远程时,出现以下错误: Warning: Permanently added ' 192.168.1. ...

  9. [SpingBoot guides系列翻译]文件上传

    文件上传 这节的任务是做一个文件上传服务. 概况 参考链接 原文 thymeleaf spring-mvc-flash-attributes @ControllerAdvice 你构建的内容 分两部分 ...

  10. Centos7安装percona-xtrabackup2.4和8.0版本

    Percona XtraBackup是一个基于MySQL的服务器的开源热备份实用程序 ,它不会在备份期间锁定您的数据库.无论是24x7高负载服务器还是低事务量环境,Percona XtraBackup ...