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

推薦する

ウィンドウ環境で VScode を使用して仮想マシン MySQL に接続する方法

1. 仮想マシン側1. MySQLの設定ファイルを見つける:sudo vim /etc/mysql/...

CSSはラジオをクリックして2つの画像スタイルを切り替えますが、複数のラジオのうち1つだけをチェックできます。

クリックされたボタンには赤い画像スタイルを実装し、選択されていない他のボタンには灰色の画像スタイルを...

ネイティブJavaScriptでカルーセルを実装する

この記事では、JavaScriptでカルーセルを実装するための具体的なコードを参考までに紹介します。...

Vue3 で状態管理を実装するために provide を使用する方法

目次序文provide/inject を通じて Vuex 関数を実装する方法このプラグインをアプリケ...

中国語と英語のフォント名の比較表(FounderとArphicを含む)

CSS ファイルでは、フォント名が文字化けしていることがよくあります。これは、作成者が中国語フォン...

ORM を使用して MySQL にデータを追加する手順

【序文】 ORM を使用してデータベース内のデータを操作する場合、前提として、新しい ORM モデル...

Dockerはポートを介してコンテナに接続します

Dockerコンテナ接続1. ネットワークポートマッピングPythonアプリケーション用のコンテナを...

無効にしてHTMLフォーム入力を送信した後にフォーム値が取得されない問題を解決する方法

フォーム入力ボックスの入力をdisable属性に設定して送信すると、入力ボックスの値を取得できなくな...

MySQL 5.6.36 Windows x64 バージョンのインストールチュートリアルの詳細

1. 対象環境Windows 7 64ビット2. 材料(1)VC++2010リリースパッケージ(64...

パスワードログインなしでCentOS7にxshellリモートログインするアイデアを詳しく解説

まず、全体的な考え方についてお話しします。 1. パスワードを使用してCentOSシステムにログイン...

スタックメニューを実装するためのjQueryプラグイン

jQueryプラグインの毎日の積み重ねメニュー、参考までに、具体的な内容は次のとおりです。スタックメ...

インライン要素スパンの最小高さの定義

span タグは HTML ウェブページを作成するときによく使用されますが、このタグの使い方がよくわ...

DockerにTomcatコンテナを追加したときにホームページにアクセスできない問題の解決方法

質問docker run コマンドを使用して、tomcat コンテナが正常に追加されました。ポートも...

HTML テーブルタグチュートリアル (44): テーブルヘッダータグ

<br />ソース コード内で表の構造を明確に区別するために、HTML 言語では、表のヘ...

表内のコンテンツオーバーフローのレイアウト方法について

コンテンツオーバーフローとは何ですか?実際、テキストが大量にある場合、コンテンツ領域がそれだけの長さ...