ウェブサイト検索

Rocky LinuxにphpMyAdminをインストールする方法


Rocky LinuxにphpMyAdminをインストールする方法

このページで

  1. httpdとMariaDBのインストール
  2. Rocky Linux に PHP をインストールする
  3. MariaDBのデプロイメントのセキュリティ
  4. phpMyAdminのソースコードをダウンロードする
  5. phpMyAdminの設定
  6. phpMyAdminの新しいデータベースを作成する
  7. phpMyAdminのためのApache/Httpd設定の追加
  8. phpMyAdminのインストールを確認する
  9. 結論

phpMyAdminは、ウェブブラウザからMySQLおよびMariaDBデータベースを管理できる無料のオープンソースツールです。phpMyAdminは、主にMySQL/MariaDBの管理をウェブ経由で扱うためにPHPで書かれた完全な機能を持つウェブアプリケーションです。データベース、テーブル、データベースユーザー、基本的なCRUD操作(作成、読み取り、更新、削除)などを管理するための堅牢でユーザーフレンドリーなインターフェースを提供します。

phpMyAdminは、Windows、macOS、Linux、BSDなど、あらゆるオペレーティングシステムで実行できるPHPウェブアプリケーションです。phpMyAdminをインストールする前にインストールする必要がある主なコンポーネントは、PHPパッケージとウェブサーバーです。ウェブサーバーにはApache、Nginxなどが含まれます。

このガイドでは、Rocky LinuxにLAMPスタックを使用してphpMyAdminをインストールする方法を学びます。このガイドは、既存のLAMPスタックのインストールがあるサーバーまたはLAMPスタックのパッケージが何もない新しいサーバーに適用できます。

前提条件

  • ロッキーLinuxシステム。
  • rootまたはsudo権限を持つユーザー。このユーザーは、新しいパッケージをインストールし、システム全体に変更を加えるために使用されます。

httpdとMariaDBのインストール

まず、ApacheまたはhttpdウェブサーバーとMariaDBデータベースサーバーをインストールします。これらのパッケージをすでにインストールしている場合は、これらの段階をスキップできます。

1. 以下のコマンドを実行してhttpdとmariadbパッケージをインストールしてください。

sudo dnf install httpd mariadb mariadb-server

yと入力して、Enterを押して確認し、パッケージをインストールします。

2. インストールが完了したら、以下のコマンドを実行して、httpdおよびmariadbサービスがシステムブート中に自動的に実行できるようにします。

sudo systemctl enable mariadb
sudo systemctl enable httpd

3. 次に、以下のコマンドを使用してhttpdとmariadbサービスを開始します。

sudo systemctl start mariadb
sudo systemctl start httpd

4. その後、以下のコマンドを実行してhttpdおよびmariadbサービスを確認します。

sudo systemctl status mariadb
sudo systemctl status httpd

もしあなたのMariaDBサービスがアクティブで動作している場合、以下のような出力が表示されます。

httpdサービスがアクティブで実行中の場合、次のような出力が表示されます。

Rocky Linux に PHP をインストールする

httpdおよびMariaDBパッケージをインストールした後、Rocky LinuxにPHPパッケージをインストールします。このガイドでは、RemiリポジトリからPHPパッケージをインストールします。すでにPHPパッケージをインストールしている場合は、このステージをスキップできます。

1. Rocky LinuxにEPELリポジトリを追加するために、以下のコマンドを実行します。

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

今'y'と入力して、'Enter'を押してEPELリポジトリを追加してください。

2. 次に、以下のコマンドを使用してロッキー・リナックスシステムにremiリポジトリを追加します。

sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

'y' と入力して 'Enter' を押すと remi リポジトリが追加されます。

3. PHPパッケージをインストールする前に、PHPモジュールリポジトリをリセットし、remiリポジトリからPHPモジュールを有効にする必要があります。

次のコマンドを実行してphpモジュールをリセットしてください。

sudo dnf module reset php

今からremiリポジトリのGPGキーを追加するように求められます。すべてのGPG関連の質問には'y'と入力し、'Enter'を押してください。

今、次のコマンドを使用してPHP Remiリポジトリを有効にできます。

sudo dnf module enable php:remi-7.4

yと入力し、Enterを押して、特にPHPバージョン7.4のためにPHP Remiリポジトリを有効にします。

4. これで以下のコマンドを使ってPHPパッケージをインストールできます。

sudo dnf install -y php php-common php-mysqlnd php-curl php-gd php-bcmath php-mcrypt php-mbstring php-xml php-zip

5. インストールが完了したら、新しい設定を適用するためにhttpdサービスを再起動します。

sudo systemctl restart httpd

MariaDBのデプロイメントのセキュリティ確保

このインストールに新しいシステムを使用している場合は、MariaDBのデプロイメントを保護するためにこのステージを実行することをお勧めします。しかし、現在のシステムに以前にMariaDBがある場合は、このステージをスキップできます。

1. 次のコマンドを実行して、mariadbのルートパスワードを設定し、デプロイメントをセキュリティ保護します。

sudo mysql_secure_installation

今、MariaDBのrootユーザーの新しいパスワードを入力し、MariaDBのデプロイに関する基本的なセキュリティに関連するすべての質問にはYを入力してください。

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.

Set root password? [Y/n] Y
New password: TYPE NEW PASSWORD for mariadb root user
Re-enter new password:REPEAT 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] Y
 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

さあ、次のステージに進むことができます。

phpMyAdminのソースコードをダウンロードする

1. 作業ディレクトリを「/var/www」に変更し、以下のようにwgetコマンドを使ってphpMyAdminのソースコードをダウンロードします。

cd /var/www/
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.zip

2. さて、phpMyAdminのソースコードを抽出すると、ディレクトリ名はphpMyAdmin-VERSION-NUMBERになります。次に、以下のようにそのディレクトリの名前をphpmyadminに変更します。

unzip phpMyAdmin-5.1.1-all-languages.zip
mv phpMyAdmin-5.1.1-all-languages phpmyadmin

3. 次に、以下の chown コマンドを使用して、'phpmyadmin' ディレクトリのオーナーを 'apache' ユーザーに変更します。

sudo chown -R apache:apache phpmyadmin

次のステージに進んで phpMyAdmin の設定を行ってください。

phpMyAdminの設定

この段階では、phpMyAdminのインストールを設定します。

1. 作業ディレクトリを/var/www/phpmyadminディレクトリに変更し、サンプル設定をconfig.inc.phpにコピーします。その後、設定ファイルの所有者をユーザーapacheに変更します。

cd /var/www/phpmyadmin/

cp config.sample.inc.php config.inc.php
chown apache:apache config.inc.php

次に、以下のopensslコマンドを使用して、ランダムな強度と番号(シークレット)を生成します。

openssl rand -hex 16

生成された秘密をメモにコピーしてください。

3. nanoエディタを使用してphpMyAdminの設定'config.inc.php'を編集します。

nano config.inc.php

"$cfg['blowfish_secret']='.....';" の値を、以下のように生成した秘密で上書きしてください。

$cfg['blowfish_secret'] = 'e5c4d8f3e2569dab102873a67481c8bb'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

今'Ctrl+x'を押し、'y'と入力し、'Enter'を押して設定を保存して終了します。

phpMyAdminの新しいデータベースを作成する

この段階では、phpMyAdmin用の新しいデータベースとユーザーを作成します。このデータベースは、phpMyAdminの設定を保存するために使用されます。

1. 以下のmysqlコマンドを使用してmariadbシェルにログインします。

mysql -u root -p

MariaDBのrootパスワードを入力し、'Enter'を押してください。

2. 以下のクエリを使用して、新しいデータベース名'phpmyadmin'を作成します。

CREATE DATABASE phpmyadmin;

3. 以下のクエリを使用して暗号化されたパスワードを生成してください。そして、未加工のパスワード「mystrongpassword」をあなたのパスワードに変更することを確認してください。

SELECT PASSWORD('mystrongpassword');

暗号化されたパスワードをメモにコピーしてください。

4. 次に、新しいユーザー名「pma」を作成し、上記のようにパスワードを暗号化します。そして、ユーザーにデータベース「phpmyadmin」へのアクセス権を付与し、新しい変更を適用します。

CREATE USER 'pma'@'localhost' IDENTIFIED VIA mysql_native_password USING '*617DA9A67DC81CE28027875FA123071F038CC7CA';
GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO 'pma'@'localhost';
FLUSH PRIVILEGES;

今すぐ「quit」と入力して、mariadbシェルを終了してください。

5. データベースとユーザーを作成した後、phpMyAdmin用のデータベーススキーマをインポートする必要があります。

/var/www/phpmyadmin/sql に作業ディレクトリを変更します。

cd /var/www/phpmyadmin/sql

phpmyadmin にデータベーススキーマをインポートするために、次のコマンドを実行してください。

mysql -u root -p phpmyadmin < create_tables.sql

データベースのルートパスワードを入力し、'Enter'を押してください。

phpMyAdminのためのApache/Httpd設定の追加

この段階では、phpMyAdminのための新しいApache/httpd設定を作成します。また、phpMyAdminの追加のセキュリティのためにApacheの基本認証を設定します。

1. 作業ディレクトリを「/etc/httpd/conf.d」に変更し、nanoエディタを使用して新しい設定「phpmyadmin.conf」を作成します。

cd /etc/httpd/conf.d/
nano phpmyadmin.conf

次の設定をコピーして貼り付けます。

Alias for accessing phpmyadmin
Alias /phpmyadmin /var/www/phpmyadmin

document root phpmyadmin
<Directory /var/www/phpmyadmin>

Enable Basic authentication 
    AuthType Basic
    AuthName "Please Enter Your Password"
    AuthUserFile /var/www/phpmyadmin/.htpasswd
    Require valid-user

#    If you're paranoid - use this and allow a specific IP address
#    Order deny,allow
#    Deny from all
#    Allow from 127.0.0.1
#    Allow from ::1

</Directory>

「Ctrl+x」を押し、「y」と入力してから「Enter」を押して保存して終了します。

以下のコマンドを実行して、新しいApache基本認証パスワードを作成します。ユーザー'johndoe'をあなたのユーザー名に変更してください。

htpasswd -c /var/www/phpmyadmin/.htpasswd johndoe

ユーザーのパスワードを入力して、繰り返してください。

次に、作業ディレクトリを「/var/www/phpmyadmin」に変更し、nanoエディタを使用して新しい設定「.htaccess」を作成します。

cd /var/www/phpmyadmin/
nano .htaccess

次の設定をコピーして貼り付けます。

AuthUserFile /var/www/phpmyadmin/.htpasswd
AuthGroupFile /dev/null
AuthName "Secret"
AuthType Basic
require valid-user
<Files ~ "^.(htpasswd|htaccess)$">
    deny from all
</Files>

「Ctrl+x」を押し、「y」と入力してから「Enter」を押して保存して終了します。

4. 次に、設定ファイル'.htaccess' と '.htpasswd'(htpasswdコマンドで生成された)の所有権を次のコマンドを使用して'apache'に変更します。

chown apache:apache .htaccess .htpasswd

5. あなたはhttpdの設定を確認し、エラーがないことを確認する必要があります。その後、新しい変更を適用するためにhttpdサービスを再起動してください。

sudo apachectl configtest
sudo systemctl restart httpd

phpMyAdminのインストールを確認する

1. ウェブブラウザを開き、サーバーのIPアドレスの後にディレクトリパス「/phpmyadmin」を入力します。

http://SERVER-IP/phpmyadmin/ :

Apache/httpdの基本認証からユーザー名とパスワードを入力してください。

ユーザー名とパスワードが正しければ、phpMyAdminのログインページが表示されます。そうでない場合は、同じページにリダイレクトされるか、'401 Unauthorized' アクセスのページが表示されます。

2. phpMyAdminのログインページで、データベースユーザー「root」とパスワードを入力し、「Go」をクリックしてphpMyAdminにログインします。

これから以下のようなphpMyAdminダッシュボードが表示されます。

上のスクリーンショットには、MariaDBデータベースサーバーの詳細が表示されています。また、「Webサーバー」セクションの下にLAMPスタックの詳細も表示されます。

結論

おめでとうございます!これで、Rocky LinuxにphpMyAdminを正常にインストールしました。次のステージでは、phpMyAdminを使用してデータベースを簡単に管理できます。既存のデータベースをインポートするか、Webアプリケーション用の新しいデータベースを作成するか、phpMyAdminのSQLクエリを通じてMySQLクエリを使用してデータを更新することもできます。

関連記事: