phpMyAdmin は、MySQLおよびMariaDB用の無料のオープンソース管理ツールです。主にPHPで記述されたポータブルWebアプリケーションとして、特にWebホスティングサービスで最も人気のあるMySQL管理ツールの1つになりました。このガイドでは、CentOS7にApacheを使用してphpMyAdminをインストールします。
このガイドを使用する前の重要な前提条件は、CentOS 7サーバーにLAMP(Linux、Apache、MariaDB、およびPHP)スタックをインストールすることです。 LAMPスタックは、phpMyAdminインターフェイスを提供するために使用されるプラットフォームです(MariaDBは、管理したいデータベース管理ソフトウェアでもあります)。サーバーにLAMPをまだインストールしていない場合は、ここをクリックして読むをクリックしてください。 CentOS7へのLAMPのインストールに関するチュートリアル。
ステップ1:EPELリポジトリを追加する:
インストールを続行する前に、EPELリポジトリ(Enterprise Linux用の追加パッケージ)をサーバーに追加する必要があります。これには、探しているphpMyAdminパッケージを含む多くの追加パッケージが含まれています。インストールするには、次のコマンドを入力します:
sudo yum install epel-release
ステップ2:phpMyAdminをインストールします:
以下のコマンドを入力して、yumパッケージシステムを使用してphpMyAdminパッケージをインストールし、続いてyを入力して続行します。
sudo yum install phpmyadmin
インストールが正常に完了すると、次のような結果が得られるはずです。
インストールには、適切なディレクトリに配置されたApache構成ファイルが含まれています。インストールが必要に応じて完全に機能するように、この構成ファイルを変更する必要があります。
phpMyAdmin.conf
を開きます /etc/httpd
にあります いくつかの変更を加えるには、テキストエディタ(このガイドではnano)でファイルを作成します。
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
現在、構成ファイルのセットアップは、サーバー自体から行われていない接続へのアクセスを拒否するように構成されています。サーバーをリモートで(ssh経由で)評価しているため、ホーム接続のIPアドレスを指定するためにいくつかの行を変更する必要があります。
最初の場所は<Directory /usr/share/phpMyAdmin/>
です。 以下に示すセクション:
Require ip 127.0.0.1
と表示されている行を変更します またはAllow from 127.0.0.1
ホーム接続のIPアドレスを参照します。
注: ホーム接続のIPを見つけるのにサポートが必要な場合は、ここをクリックして確認してください。
2番目の場所は<Directory /usr/share/phpMyAdmin/setup/>
です。 以下に示すセクション:
また、 Require ip 127.0.0.1
と表示されている行を変更します。 またはAllow from 127.0.0.1
ホーム接続のIPアドレスを参照します。
注: ホーム接続のIPアドレスがVPSのIPアドレスと異なります。
設定が完了したら、次のように入力してApacheWebサーバーを再起動します。
sudo systemctl restart httpd.service
インターフェイスにアクセスするには、WebブラウザでパブリックIPアドレスまたはサーバーのドメイン名にアクセスし、続いて/phpMyAdminにアクセスします。
http://server_domain_or_IP/phpMyAdmin
MySQLのインストール中に設定したrootユーザー名と管理者パスワードを使用してphpmyadminインターフェースにログインします。ログインすると、ユーザーインターフェイスは次のスクリーンショットのようになります。
PHPMYADMININSTANCEの保護
不正アクセスを防ぐには、phpmyadminを保護することが重要です。これを行う簡単な方法は、インターフェースの場所を/ phpMyAdminから別の場所に変更して、ボットのブルートフォースの自動試行を防ぐことです。
以下のコマンドを使用して構成ファイルを開きます。
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
以下の2行は、 /usr/share/phpMyAdmin
のコンテンツを提供するデフォルトのエイリアスです。 サイトのドメイン名またはIPアドレスにアクセスし、その後に /phpMyAdmin
が続く場合の場所 または/phpmyadmin
。
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin
これらのデフォルトのエイリアスは、ボットや悪意のあるユーザーによって標的にされる可能性が高いため、無効にします。セキュリティ上の理由から、次の2つのルールを念頭に置いて独自のエイリアスを決定する必要があります。
- URLの場所の目的を示すものであってはなりません。
- 覚えやすいはずですが、推測するのは簡単ではありません。
このガイドでは、/somethingelse
を使用します 。
変更を適用するために、既存の行をコメントアウトし(完全に削除できます)、独自の行を追加します:
#Alias /phpMyAdmin /usr/share/phpMyAdmin
#Alias /phpmyadmin /usr/share/phpMyAdmin
Alias /somethingelse /usr/share/phpMyAdmin
ファイルを保存して閉じてから、次のコマンドを使用してhttpdを再起動します。
sudo systemctl restart httpd.service
phpMyAdminインストールの以前の場所にアクセスすると、404エラーが発生します:
http://server_domain_or_IP/phpMyAdmin
http://server_domain_or_IP/nothingtosee
Apacheの組み込みの.htaccess
を使用して、アプリケーション全体の前にゲートウェイを配置するphpMyAdminを保護することもできます。 認証および承認機能。
まず、Apache構成ファイルを編集して、.htaccessファイルのオーバーライドの使用を有効にする必要があります。以下のコマンドでphpmyadmin.confを開きます。
sudo nano /etc/httpd/conf.d/phpMyAdmin.conf
AllowOverride All
を追加します <Directory /usr/share/phpmyadmin>
の下部に 以下に示すように、構成ファイルのセクション:
閉じる前にファイルを保存してから、次のコマンドを使用してApacheを再起動します。
sudo systemctl restart apache2
.htaccessの使用を有効にした後、次のコマンドを入力して、セキュリティを完全に実装するためのファイルを作成する必要があります。
sudo nano /usr/share/phpmyadmin/.htaccess
AuthType Basic
AuthName "Restricted Files"
AuthUserFile /etc/phpmyadmin/.htpasswd
Require valid-user
詳細については、 htaccess
をご覧ください。 ここ。
以下のコマンドを入力して、パスワードを htaccess
に追加します ファイル:
sudo htpasswd -c /etc/httpd/pma_pass username
認証するユーザーを追加するには、同じコマンドをもう一度入力しますが、今回は -c
を使用しません。 フラグ、および新しいユーザー名:
sudo htpasswd /etc/httpd/pma_pass seconduser
これにより、ドメインでphpMyAdminにアクセスするたびに、以下に示すように構成した追加のアカウント名とパスワードの入力を求められます。
これにより、ドメインでphpMyAdminにアクセスするたびに、以下に示すように、構成したばかりの追加のアカウント名とパスワード:
Apache認証パスワードを入力すると、元のphpMyAdmin認証ページにリダイレクトされ、他の資格情報を入力します。