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 解凍バージョン グラフィック インストール チュートリアル

推薦する

Tomcat でサーブレット URL パターンを構成する際の問題の詳細な説明

tomcat の web.xml を構成する場合、サーブレットは比較的重要な問題です。ここでは、サー...

Ubuntu システムでタイムゾーンと時刻を変更する方法

Linux コンピュータには 2 つの時間があります。1 つはハードウェア時間 (BIOS に記録さ...

Vue で手ぶれ補正とスロットリングを使用する方法

目次序文コンセプト安定意味使用シナリオコードVueでの使用スロットリング意味使用シナリオコードVue...

MySQL クイックデータ比較テクニック

MySQL の運用と保守において、R&D の同僚が 2 つの異なるインスタンスのデータを比較...

HTML から PDF への変換事例の概要 (複数の画像を推奨)

仕事の都合上、最近 HTML を PDF に変換する機能について調べることに時間を費やしました。 H...

MySQL データベース テーブルのパーティション分割に関する考慮事項 [推奨]

テーブル パーティショニングは、データベース パーティショニングとは異なります。では、テーブル パー...

MySQL 独立インデックスと共同インデックスの選択

複数列のインデックスについては、理解が不足していることがよくあります。よくある間違いは、多数の列に独...

JavaScript のクロージャによって発生する問題を回避する

閉鎖による問題を回避するためのletについてオブジェクト指向の考え方を使用して、購入者情報の削除機能...

横スクロールウェブサイトデザインの概要

水平スクロールはあらゆる状況に適しているわけではありませんが、適切に行えば、Web サイトを他のサイ...

Vue はウェブページの言語切り替えの国際化を実装します

1. 基本的な手順1: yarn add vue-i18nをインストールするこのパスに新しい .js...

MySQLで重複データを削除する詳細な例

MySQLで重複データを削除する詳細な例重複レコードには 2 つの意味があります。1 つは完全に重複...

Windows での自動展開に Jenkins を使用するチュートリアル図

今日は、Jenkins + powershell スクリプトを使用して、.NET CORE スクリプ...

ウェブページのメモリ使用量とCPU使用量を削減する方法

一部の Web ページは大きく見えなくても開くのに非常に時間がかかる場合があります。一方、他の We...

WindowsでのNginxの起動や停止などの基本操作コマンドの詳しい説明

Windows で Nginx を使用するには、Nginx サービスの起動、停止、Nginx のリロ...

MySQL の binlog_format モードと設定の詳細な分析

MySQL レプリケーションには、SQL ステートメント ベースのレプリケーション (SBR)、行ベ...