RHEL システムで Apache を使用して PhpMyAdmin をインストールする方法
この記事では、CentOS ストリームなどの RHEL ベースのディストリビューション上の Apache ウェブサーバーに最新バージョンの PhpMyAdmin をインストールする手順を段階的に説明します。 >、Fedora、Rocky Linux、Alma Linux
ウェブサイト検索
この記事では、CentOS ストリームなどの RHEL ベースのディストリビューション上の Apache ウェブサーバーに最新バージョンの PhpMyAdmin をインストールする手順を段階的に説明します。 >、Fedora、Rocky Linux、Alma Linux
PhpMyAdmin は、人気のある強力な Web ベースのデータベース管理ツールであり、最新バージョンを使用すると、最新の機能とセキュリティ強化機能に確実にアクセスできます。このガイドを終えると、PhpMyAdmin を使用して MySQL または MariaDB データベースを簡単に管理できるようになります。
始める前に、以下のものがあることを確認してください。
ソフトウェアをインストールする前に、次の dnf コマンドを実行してシステムが最新であることを確認することが重要です。
sudo dnf update
これにより、システム上のすべてのパッケージが最新バージョンに更新されます。
PhpMyAdmin は Web ベースのツールであり、これを使用するには、次のコマンドを使用して Apache Web サーバーをインストールする必要があります。
sudo dnf install httpd
インストールしたら、Apache サービスを開始し、起動時に開始できるようにします。
sudo systemctl start httpd
sudo systemctl enable httpd
データベース サーバーも必要になります。 MariaDB または MySQL のどちらをインストールするかを選択できますが、この例では MariaDB を使用します。
sudo dnf install mariadb-server
インストールしたら、MariaDB サービスを開始し、起動時に開始できるようにします。
sudo systemctl start mariadb
sudo systemctl enable mariadb
次に、スクリプトを実行して MariaDB インストールを保護します。これにより、root ユーザーのパスワードの入力、リモート root ログインの禁止、匿名ユーザーの削除が求められます。また、デフォルトでは匿名ユーザーがアクセスできるテスト データベースも削除されます。
sudo mysql_secure_installation
PhpMyAdmin は PHP で構築されているため、次のコマンドを使用して PHP と必要な拡張機能をインストールする必要があります。
sudo dnf install php php-mysqlnd php-json php-mbstring
次に、図に示すように、Web サーバーのドキュメント ルート ディレクトリ /var/www/html に移動して、Linux システムへの PhpMyAdmin のインストールを進めましょう。
cd /var/www/html
次に、次の wget コマンドを使用して、PhpMyAdmin の最新バージョンをダウンロードします。
sudo wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
ダウンロードしたら、ダウンロードしたアーカイブを解凍し、便宜上ディレクトリの名前を変更します。
sudo tar -xvzf phpMyAdmin-latest-all-languages.tar.gz
sudo mv phpMyAdmin-*/ phpmyadmin
PhpMyAdminの設定ファイルを作成します。
sudo cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
構成ファイルを編集します。
sudo nano /var/www/html/phpmyadmin/config.inc.php
次の行を見つけて、独自の blowfish_secret を設定します。
$cfg['blowfish_secret'] = 'your_secret';
ファイルを保存して終了します。
デフォルトでは、Apache は通常、HTTP と HTTPS にポート 80 と 443 を使用します。それぞれ。 Apache ポートを開いてサーバー上の PhpMyAdmin へのアクセスを許可するには、次のコマンドを実行します。
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent
sudo firewall-cmd --reload
これらのコマンドは、指定したポートでの受信トラフィックを許可するルールを追加し、ファイアウォールをリロードして変更を適用します。
最後に、Apache を再起動して変更を適用します。
sudo systemctl restart httpd
これで、サーバーの IP アドレスまたはドメイン名に移動し、その後に URL で「/phpmyadmin」を追加することで、Web ブラウザを通じて PhpMyAdmin にアクセスできるようになります。
http://your_server_ip/phpmyadmin
MySQL または MariaDB の資格情報を使用してログインします。
PhpMyAdmin 構成ファイルを開きます。
sudo vi /etc/httpd/conf/httpd.conf
セクション、または PhpMyAdmin が設定されているセクションを見つけて、許可するように Require
ディレクティブを更新します。 PhpMyAdmin にアクセスするためのすべての IP アドレス。
<Directory "/var/www/html/phpmyadmin">
...
Require all granted
...
</Directory>
上記の設定では、任意の IP アドレスからのアクセスが許可されますが、特定の IP へのアクセスを制限したい場合は、Require all allowed
を Require ip your_ip
に置き換えます。
Apache を再起動して変更を適用します。
sudo systemctl restart httpd
これで、サーバーの IP アドレスまたはドメインを使用して外部から PhpMyAdmin にアクセスできるようになります。
http://your_server_ip/phpmyadmin
外部から PhpMyAdmin へのアクセスを開くと、セキュリティ リスクが生じる可能性があることに注意してください。強力な認証メカニズムが導入されていることを確認し、 暗号化通信にHTTPS の使用を検討してください。さらに、可能であればアクセスを信頼できる IP アドレスのみに制限するか、安全な PhpMyAdmin ログイン URL に制限します。
phpMyAdmin のデフォルトのログイン URL は予測可能であり、脆弱性を悪用しようとする悪意のある攻撃者の標的となることがよくあります。ログイン URL を変更すると、セキュリティ層が追加され、権限のないユーザーがデータベース管理インターフェイスにアクセスすることがより困難になります。
これを行うには、/etc/httpd/conf.d/phpMyAdmin.conf 構成ファイルを作成します。
vi /etc/httpd/conf.d/phpMyAdmin.conf
次に、以下の設定を追加します。
#Alias /phpMyAdmin /var/www/html/phpmyadmin
Alias /my /var/www/html/phpmyadmin
<Directory /var/www/htm/lphpmyadmin>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require all granted
# Additional IP or hostname-based access control can be added here
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 127.0.0.1
Allow from ::1
# Additional IP or hostname-based access control can be added here
</IfModule>
</Directory>
/my
を希望のカスタム ログイン URL に置き換えます。変更を保存し、テキスト エディタを終了します。
構成ファイルに変更を加えた後、Apache を再起動して変更を適用します。
systemctl restart httpd
Web ブラウザを開き、新しい phpMyAdmin ログイン URL に移動します。
http://yourdomain.com/my/
Apache Web サーバーと phpMyAdmin の間の通信を保護することは、ログイン認証情報やデータベース コンテンツなどの機密情報を保護するために重要です。これを実現する効果的な方法の 1 つは、Apache Web サーバー上の phpMyAdmin のSSL (Secure Socket Layer) を構成することです。
これを行うには、まずサーバーにmod_ssl モジュールをインストールします。
yum install httpd mod_ssl openssl
次に、証明書を保存するディレクトリを作成し、図に示すように自己署名 SSL 証明書と秘密キーを生成します。
mkdir /etc/httpd/ssl
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/httpd/ssl/apache.key -out /etc/httpd/ssl/apache.crt
SSL 証明書とキーを作成した後、Apache SSL 構成ファイルを開きます。
vi /etc/httpd/conf.d/ssl.conf
次に、構成ファイルに次の行を追加します。
SSLEngine on
SSLCertificateFile /etc/httpd/ssl/apache.crt
SSLCertificateKeyFile /etc/httpd/ssl/apache.key
変更を保存し、Apache Web サーバーを再起動します。
systemctl restart httpd
次に、phpMyAdmin 構成ファイルを開きます。
vi /var/www/html/phpmyadmin/config.inc.php
次の行を追加して、phpMyAdmin に SSL を強制します。
$cfg['ForceSSL'] = true;
変更を保存し、テキスト エディタを終了します。
最後に、Web ブラウザを開いて次の URL に移動し、安全な SSL 接続経由で phpMyAdmin にアクセスします。
https://yourdomain.com/my/
安全でない接続を示すメッセージは、単に自己署名証明書の使用が原因であることに注意してください。続行するには、「詳細」をクリックしてセキュリティ例外を承認します。
おめでとう! RHEL、CentOS Stream、Rocky Linux、または AlmaLinux システムに Apache を使用して PhpMyAdmin が正常にインストールされました。この Web ベースのツールを使用すると、データベースの管理が簡素化され、データベースの作成、クエリ、データ管理などのタスクが簡単になります。