Ubuntu 18.04 に phpMyAdmin をインストールするための詳細なチュートリアル

Ubuntu 18.04 に phpMyAdmin をインストールするための詳細なチュートリアル

Ubuntu 18.04 上の Apache で動作するように phpMyAdmin をインストールします。

phpMyAdmin をインストールする前に、LAMP スタックをインストールし、Web ページを用意しておく必要があります。

インストールされていない場合は、Ubuntu 18.04 への Apache、MySQL、PHP のインストールを参照して、最初にインストールしてください。

1. phpMyAdminをインストールする

まず、パッケージ リストを更新し、Ubuntu 18.04 に phpMyAdmin をインストールします。以下に && で区切られた 2 つのコマンドを示します。最初のコマンドはパッケージ リストを更新し、phpMyAdmin とその依存関係の最新バージョンを確実に取得できるようにします。 2 番目のコマンドは、phpMyAdmin をダウンロードしてインストールします。続行するかどうかを尋ねられたら、y を押して Enter キーを押します。

$ sudo apt update && sudo apt install phpmyadmin

設定によっては、phpMyAdmin パッケージ構成の次の画面の順序が異なる場合があります。

Web サーバーを選択するように求められたら、SPACE キーを押して apache2 の横にアスタリスク [*] を付け、TAB キーを押して OK を強調表示し、ENTER キーを押します。次のようになります。

入力後は以下のようになります。

「はい」を選択して Enter キーを押すと、データベースがインストールおよび構成されます。

MySQL アプリケーション パスワードは、phpMyAdmin が MySQL と通信するために内部的にのみ使用されます。空白のままにしておくと、パスワードが自動的に生成されます。続行するには Enter キーを押してください。

2. phpMyAdmin のテスト

これで、サーバーのドメイン名またはパブリック IP アドレスと /phpMyAdmin にアクセスすることで、phpMyAdmin Web インターフェイスにアクセスできるようになります。たとえば、http://example.com/phpmyadmin または http://192.168.1.10 phpmyadmin
まだドメイン名を持っていない、または IP がわからない場合は、次のコマンドで確認できます。

$ sudo サービス apache2 ステータス

MySQL を初めてインストールするときは、root ユーザーとパスワードを設定する必要があります。ただし、root ユーザーの場合はリモート ログインが無効になっている可能性があります。
「ユーザー 'root'@'localhost' のアクセスが拒否されました」というエラーが表示された場合は、手順 3 に進み、phpMyAdmin のスーパーユーザーを作成する必要があります。

3. MySQLユーザーを作成する

上記の root ユーザーとしてログインできない場合は、phpMyAdmin のスーパーユーザー アカウントを作成できます。
ターミナルで、root ユーザーとして MySQL にログインします。 MySQL を初めてインストールしたときに、root パスワードを作成した可能性があります。
または、パスワードが空白の場合は、パスワードの入力を求められたときに Enter キーを押すことができます。

$ sudo mysql -p -u ルート

次に、任意のユーザー名で新しい MySQL ユーザーを追加します。この例では、pmauser (php my admin user) と呼びます。
必ず password_here を自分のパスワードに置き換えてください (独自のパスワードを作成してください)。
% 記号は、このユーザーがどこからでもリモートでログインできるようにすることを MySQL に指示します。セキュリティを強化したい場合は、代わりに IP アドレスを使用できます。

'password_here' によって識別されるユーザー 'pmauser'@'%' を作成します。 

ここで設定したパスワードは 123456 です。これは弱いパスワード (推測されやすい) であり、すべての人がこのパスワードを使用することは推奨されません。

ここで、新しいユーザー pmauser にスーパーユーザー権限を付与します。

GRANT オプションを使用して、*.* のすべての権限を 'pmauser'@'%' に付与します。

ここで MySQL を終了します。

出口

これで、この新しいユーザー アカウントを使用して phpMyAdmin にアクセスできるようになります。
phpMyAdmin に追加のセキュリティを設定する場合は、次の手順に進みます。

4. phpMyAdmin URLを難読化する

ボットや攻撃者は、デフォルトの phpMyAdmin ログイン ページを探して Web サーバーを常にスキャンしているため、URL を別のものに変更することをお勧めします。
この例では、example.com/phpmyadmin から example.com/pmahidden に変更します。
vi テキスト エディターを使用して Apache の phpMyAdmin 構成ファイルを開きます。 (viに慣れていない場合は、ビジュアルテキストエディタのgeditをお勧めします)

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

エイリアスを /phpmyadmin から /pmahidden に変更します。任意の名前に変更できます。

保存してviを終了します。
変更を有効にするには、Apache サービスを再ロードする必要があります。

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

これで、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 サービス apache2 をリロード

5.2 .htpasswdの設定

gedit テキスト エディターを使用して、phpMyAdmin インストール ディレクトリに新しい .htaccess ファイルを作成します。

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

次の内容を .htaccess ファイルに貼り付けます。

認証タイプ 基本
AuthName「制限付きアクセス」
認証ユーザーファイル /etc/phpmyadmin/.htpasswd
有効なユーザーを要求する

保存するには「保存」ボタンをクリックし、終了するには「閉じる」ボタンをクリックします。
これで、htpasswd ツールを使用して .htpasswd ファイルを生成できます。

この例では、pmauser (php my admin user) という新しいユーザーを作成しましたが、任意の名前に変更できます。

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

新しいパスワードを 2 回入力するよう求められます (パスワードの生成)。
これが完了すると、ブラウザで phpMyAdmin にアクセスできるようになり、ログイン詳細の入力が求められます。

参考: Ubuntu 18.04 に Apache 用の phpMyAdmin をインストールする

要約する

上記は、Ubuntu 18.04 に phpMyAdmin をインストールする方法についての詳細なチュートリアルです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Ubuntu mysqlログイン名とパスワードを表示および変更し、phpmyadminをインストールする
  • Ubuntu 17.10 での phpMyAdmin データベース管理ツールのインストールの詳細な構成
  • Alibaba Cloud Ubuntu 12.04環境でのApache+PHP+PHPmyadmin+MYsqlの構成を分析する

<<:  Vue3.0 における Ref と Reactive の違いの詳細な分析

>>:  mysql 8.0.15 winx64 解凍バージョン グラフィック インストール チュートリアル

推薦する

HTML チュートリアル: title 属性と alt 属性

XHTML は CSS レイアウトの基礎です。jb51.net は常に XHTML 知識の習得を重視...

MySQLトリガーの使用と理解

目次1. トリガーとは何ですか? 2. トリガーを作成するトリガーを作成するための構文は次のとおりで...

サイトマップをウェブページの下部に配置するメリットと例

以前は、ほとんどすべての Web サイトに、すべてのページをリストしたサイトマップ ページがありまし...

高い同時実行性の下でNginxのパフォーマンスを最適化する方法をまとめます

目次特徴利点インストールとコマンド設定ファイルプロキシモードとリバースプロキシ構成フォワードプロキシ...

Blazor における CSS 分離の問題

1. 環境VS 2019 16.9.0 プレビュー 1.0 .NET SDK 5.0.100 2. ...

数千万のデータを扱うMySQLのページングクエリのパフォーマンスを最適化する

MySQL のデータ量が多い場合、制限ページングが使用されます。ページ数が増えると、クエリの効率が低...

MySQL クエリのソートとクエリ集計関数の使用法の分析

この記事では、例を使用して、MySQL クエリのソート関数とクエリ集計関数の使用方法を説明します。ご...

VueでJSXを使用する方法

JSXとは何かJSX は Javascript の構文拡張であり、JSX = Javascript ...

Web プロジェクト開発 JS 機能の手ぶれ補正とスロットリングのサンプル コード

目次安定導入手ぶれ補正シーン1(マウスの動き込み)手ぶれ補正シーン2(キーボードのキー)関数のスロッ...

js に基づいて大きなファイルのアップロードとブレークポイントの再開を管理する方法

目次序文フロントエンド構造バックエンド構造(ノード+エクスプレス) FormDataに基づくファイル...

MySQL に配列を保存するサンプルコードと方法

多くの場合、ストアド プロシージャを作成するときに配列がよく使用されますが、MySQL ではストアド...

MySQL における explain の役割の詳細な説明

1. MYSQLインデックスインデックス: MySQL がデータを効率的に取得するのに役立つデータ構...

MySQL ビューの原則と使用例の概要

この記事では、MySQL ビューの原理と使用法についてまとめます。ご参考までに、詳細は以下の通りです...

MySQL 接続とコレクションの簡単な分析

結合クエリ結合クエリとは、2 つ以上のテーブル間のマッチング クエリを指し、一般的には水平操作と呼ば...

CSS を使用して複数の方法で等高レイアウトを実装するサンプル コード

この記事で説明する等高レイアウトでは、純粋な CSS を使用して、要素の高さを手動で設定することなく...