GNU/Linux >> Linux の 問題 >  >> Linux

Ubuntu 18.04 に phpMyAdmin をインストールする方法

PhpMyAdmin は、MySQL で作成されたデータベース全体を作成、保存、編集できる GUI (グラフィック ユーザー インターフェイス) です。

このガイドでは、phpMyAdmin をインストールする方法と、Linux Ubuntu 18.04 でのアクセスを保護する方法について説明します。

まず、SSH 接続を介してサーバーに接続します。まだ行っていない場合は、ガイドに従って SSH プロトコルに安全に接続することをお勧めします。ローカル サーバーの場合は、次の手順に進み、サーバーのターミナルを開きます。

phpMyAdmin のインストール

PhpMyAdmin は標準の Ubuntu リポジトリにあります。

最初に apt インデックスを更新してから、phpMyAdmin をダウンロードしてインストールします:

$ sudo apt update
$ sudo apt install phpmyadmin php-mbstring php-gettext

Y と入力し、Enter キーを押して確定します。

次の画面が表示されます:

ここで apache を選択しますが、赤いダッシュで apache 2 が選択されていないことに注意してください。これを選択するには、スペースバーを押してから Enter キーを押します。スペースバーを押さないと、インストールに必要なファイルが転送されません。

Enter キーを押すと、次の画面が表示されます:

[はい] を選択し、Enter キーを押します。

管理者データベースのパスワードを入力する必要があります。新しいパスワードを入力し、Tab を押して [OK] を選択し、Enter を押します。

アプリケーションのパスワードを入力して確認します。

前と同じように、新しいパスワードを入力し、Tab キーを押して [OK] を選択し、Enter キーを押します。

パスワードを確認してください。

インストールが完了すると、phpMyAdmin 構成ファイルがここに追加されます:

/etc/apache2/conf-enabled/phpmyadmin.conf The

行う必要があるのは、PHP mbstring 拡張機能を有効にすることだけです。そのためには、次のように入力します:

$ sudo phpenmod mbstring

すべての変更を適用するには、次のように入力して Apache を再起動します。

$  sudo systemctl restart apache2

アクセス権限の管理

phpMyAdmin を使用するには、インストール中に自動的に作成されたユーザーとしてログインしないでください。代わりに、MySQL ユーザー root として、または phpMyAdmin インターフェースを介してデータベース マネージャーとしてログインしてください。

これら 2 人のユーザーのうちの 1 つだけを構成するか、両方を構成するかを選択できます。

MySQL root アカウントのパスワードの設定

MySQL root ユーザーとしてアクセスするには、単純なパスワードの代わりに認証 auth_socket が必要です。 phpMyAdmin 経由で MySQL root としてログインするには、認証方法を変更してください。

そうするには、MySQL プロンプトを開きます

$ sudo mysql

次のように入力して、各 MySQL ユーザーの認証方法を確認します。

SELECT user, authentication_string, plugin, host FROM mysql.user;

MySQL ユーザーのすべての認証方法のリストが表示されるようになりました。ここで、root ユーザーが auth_socket 認証タイプを持っていることがはっきりとわかります。

+------------------+-------------------------------------------+-----------------------+-----------+

| user             | authentication_string                     | plugin | host |

+------------------+-------------------------------------------+-----------------------+-----------+

| root             |                         | auth_socket | localhost |

| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |

| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |

| debian-sys-maint | *8486437DE5F65ADC4A4B001CA591363B64746D4C | mysql_native_password | localhost |

| phpmyadmin       | *5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | mysql_native_password | localhost |

+------------------+-------------------------------------------+-----------------------+-----------+

5 rows in set (0.00 sec)

認証タイプを auth_socket から mysql_native_password に変更し、パスワードを使用して root ユーザーにログインするには、次のように入力します:

ALTER USER 'root' @ 'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

パスワードの代わりに、覚えておく必要のあるパスワードを入力してください。

次のように入力して、行った変更を確認します:

FLUSH PRIVILEGES;

このようにして、root ユーザーの認証方法を更新する必要があることがサーバーに通知されます。

再入力して、変更が保存されているかどうかを確認します:

SELECT user, authentication_string, plugin, host FROM mysql.user;

すべてが正しく行われた場合、root ユーザーの認証方法が変更され、表示される画面は次のようになります:

+------------------+-------------------------------------------+-----------------------+-----------+

| user             | authentication_string                     | plugin | host |

+------------------+-------------------------------------------+-----------------------+-----------+

| root             | *DE06E242B88EFB1FE4B5083587C260BACB2A6158 | mysql_native_password | localhost |

| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |

| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |

| debian-sys-maint | *8486437DE5F65ADC4A4B001CA591363B64746D4C | mysql_native_password | localhost |

| phpmyadmin       | *5FD2B7524254B7F81B32873B1EA6D681503A5CA9 | mysql_native_password | localhost |

+------------------+-------------------------------------------+-----------------------+-----------+

5 rows in set (0.00 sec)

完了したら、以前に選択したパスワードを使用して、phpMyAdmin インターフェイスで root ユーザーとして自分自身を認証します。

専用 MySQL ユーザーのパスワードを構成する

root ユーザーとしてではなく、この目的のために特別に作成されたユーザーとして phpMyAdmin にアクセスするには、作成するだけです。

これを行うには、MySQL プロンプトに再度ログインします。

root ユーザー用のパスワードベースの認証がすでに構成されている場合は、次のように入力します:

$  mysql -u root -p

root ユーザーを使用しないことにした場合は、次のように入力します。

$ sudo mysql

ここで、新しいユーザーを作成し、次のように入力して名前とパスワードを選択します:

$  CREATE USER 'username' @ 'localhost' IDENTIFIED BY 'password';

'username' と 'password' を選択したものに置き換えてください。

必要なすべての権限を新しいユーザーに付与するには、次のように入力します:

$  GRANT ALL PRIVILEGES ON *. * TO 'username' @ 'localhost' WITH GRANT OPTION;

次に、次のように入力して MySQL プロンプトを終了します。

$ exit

phpMyAdmin への初めてのアクセス

サーバーに接続するには、選択したブラウザで次の URL を使用するだけです:http:// IP-SERVER / phpmyadmin

アドレスが正しい場合、画面が表示され、ユーザー名とパスワードを入力するよう求められます。

ここで、root ユーザーまたは新しく作成したユーザーとしてログインできます。

すべてが正しく実行されると、phpMyAdmin ダッシュボードが表示されます。

外部からの攻撃に対する保護

このように構成された phpMyAdmin は、一部の人々にとって特に興味深いデータベースであるため、外部からの攻撃に対して特に脆弱です。

これらの攻撃を防ぐ最も簡単な方法は、統合された Apache 関数を使用してアプリケーション全体にアクセス ポートを追加することです。

この関数は .htaccess です。

この機能を設定するには、apache ディレクトリの .conf ファイルにアクセスしてください。

入力するには:

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

.conf ファイル内で次のセクションを検索します:

<Directory / usr / share / phpmyadmin>

追加:

AllowOverride All

ディレクティブ AllowOverride All を追加したら、.conf ファイルを保存して閉じ、Apache を再起動してすべての変更を実装します。

これを行うには、次のように入力します:

$ sudo systemctl restart apache2

アプリケーションの .htaccess が有効になったら、新しいものを作成してください。

ファイルはアプリケーション ディレクトリにあります。

そうするには、次のように入力します:

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

ファイルに次のように記述します:


			AuthType Basic

			AuthName "Reserved files"

			AuthUserFile /etc/phpmyadmin/.htpasswd

			Require valid-user

このファイルは、認証用のダイアログ ボックスを作成するだけです。

ダイアログ ボックスの「タイトル」は「予約済みファイル」になります。この名前は自由に変更できます。悪意のあるユーザーがこの保護を迂回することに興味を持たないようにするために、非常に具体的な名前を付けないことをお勧めします。

ファイルを保存して閉じます。

パスワード ファイルを作成します。

作成するには、次のように入力します:

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

「ユーザー名」を任意の名前に置き換えます。

パスワードを選択して確認する必要があります。パスワードを含むファイルが /etc/phpmyadmin/.htpasswd に作成されます。

今後、phpMyAdmin にアクセスする前に、すべてをより安全にするために追加のユーザー名とパスワードが必要になります。

ユーザー名とパスワードを入力すると、MySQL 認証情報を入力する通常の phpMyAdmin ログイン ウィンドウが表示されます。


Linux
  1. Ubuntu18.04にMySQL8.0をインストールする方法

  2. Ubuntu20.04にphpMyAdminをインストールする方法

  3. Ubuntu 22.04 に MySQL をインストールする方法

  1. UbuntuにphpMyAdminをインストールして保護する方法

  2. Ubuntu20.04にMySQLをインストールする方法

  3. Ubuntu18.04にMySQLをインストールする方法

  1. UbuntuにphpMyAdminをインストールする方法

  2. UbuntuにPhpMyAdminをインストールする方法

  3. Ubuntu18.04にMySQL8.0をインストールする方法