MySQL用GUI設定ツール導入(phpMyAdmin)(CentOS8)

提供:あわ自由帳

メインページ > CentOS_8_で自宅サーバー構築  > MySQL用GUI設定ツール導入(phpMyAdmin)(CentOS8)

phpMyAdminインストール

mkpasswdコマンド

ランダムな文字列を取得するのに必要なコマンドをインストール

[root@host3 ~]# rpm -q expect ← expectインストール確認
パッケージ expect はインストールされていません。

[root@host3 ~]# dnf install expect ← expectインストール※インストールされていない場合のみ

phpMyAdminインストール

[root@host3 ~]# wget https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.zip
 ← phpMyAdminダウンロード
[root@host3 ~]# unzip phpMyAdmin-5.0.2-all-languages.zip ← 解凍

[root@host3 ~]# mkdir /var/www/html/awajp.com/phpmyadmin ← インストールディレクトリ作成

[root@host3 ~]# mv phpMyAdmin-5.0.2-all-languages/* /var/www/html/awajp.com/phpmyadmin ← ダウンロードしたphpMyAdminを所定の場所へ移動

[root@host3 ~]# rm -fr phpMyAdmin-5.0.2-all-languages ← 後始末

phpMyAdmin設定

phpMyAdmin設定

[root@host3 ~]# cp /var/www/html/awajp.com/phpmyadmin/config.sample.inc.php /var/www/html/awajp.com/phpmyadmin/config.inc.php
 ← サンプル設定ファイルをコピー

[root@host3 ~]# chmod 660 /var/www/html/awajp.com/phpmyadmin/config.inc.php ← 設定ファイルのパーミッションを変更

[root@host3 ~]# mkpasswd -l 46 ← mkpasswdコマンドでランダムな46桁の文字列を取得
djmurqlllleDxcbxfbrtM'jtnio01svukagabgraxbarcr ← ランダムな46桁の文字列※設定ファイル編集で使用する

[root@host3 ~]# vi /var/www/html/awajp.com/phpmyadmin/config.inc.php ← 設定ファイル編集
$cfg['blowfish_secret'] = 'djmurqlllleDxcbxfbrtM'jtnio01svukagabgraxbarcr'; ← mkpasswdコマンドで取得したランダムな46桁の文字列を指定
※上記はログイン時のパスワード暗号化の際に内部的に利用されるパスフレーズであり、ユーザに入力要求されるものではない

$cfg['Servers'][$i]['auth_type']     = 'cookie'; ← 認証モードを「クッキー」にする

 /*
 * End of servers configuration
 */

[root@host3 ~]# chown -R sysop.sysop /var/www/awajp.com/phpmyadmin/ ← phpMyAdminの所有者を変更

Apache設定

Webページパスワード制限をかけて、SSLによる接続に限定してます。

その1

リバースプロクシを設定してる場合、他のサーバーに影響を及ぼした。

[root@host3 ~]# vi /etc/httpd/conf.d/phpmyadmin.conf

<Location /phpmyadmin>
# https (SSL) による接続に限定し、http での接続は拒否する
SSLRequireSSL
# パスワード制限
AuthUserFile /etc/httpd/conf/.htpasswd
AuthGroupFile /dev/null
AuthName "secret page"
AuthType Basic
# 認証を許可するユーザー名を指定
require user phpmyadmin
</Location>

その2

検証中。

[root@host3 ~]# vi /etc/httpd/conf.d/phpmyadmin.conf

<Directory /var/www/html/awajp.com/phpmyadmin>
# https (SSL) による接続に限定し、http での接続は拒否する
SSLRequireSSL
# パスワード制限
AuthUserFile /etc/httpd/conf/.htpasswd
AuthGroupFile /dev/null
AuthName "secret page"
AuthType Basic
# 認証を許可するユーザー名を指定
require user phpmyadmin
</Directory>

その3

正常動作している。

[root@host3 ~]# vi /var/www/html/awajp.com/phpmyadmin/.htaccess

# https (SSL) による接続に限定し、http での接続は拒否する
SSLRequireSSL
# パスワード制限
AuthUserFile /etc/httpd/conf/.htpasswd
AuthGroupFile /dev/null
AuthName "secret page"
AuthType Basic
# 認証を許可するユーザー名を指定
require user phpmyadmin

Apache設定反映

[root@host3 ~]# systemctl restart httpd