phpMyAdminをローカルネットワーク内のサーバーからDBサーバーへ接続する方法


phpMyAdmin!
ローカルネットワークで繋がっている場合、
phpMyAdminをインストールするサーバーは1台でいいぞ、という話。
1、実現したいこと
オリジンサーバーからDBサーバーにphpMyAdminで接続する。
DBサーバーは基本的にインターネットに繋がないので、
オリジンサーバーなどから踏み台的にphpMyAdminを利用することが多いだろう。
特に難しくないので簡単にやり方を紹介します。
2、オリジンサーバーにDBサーバーの数だけインストール
phpMyAdminはいくらでもインストールできて、接続先を自由に選べる。
フォルダを分けてphpMyAdminをインストールしてください。
yumやapt等は使わず直接ダウンロードします。
<インストールしたいディレクトリに移動した後、下記を実行>
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
自動的に最新の安定版がダウンロードされます。
公式HPからダウンロードしてもOKです。
このファイルだけで全て完結しているので解凍するだけで使えます。
現時点は開発版のバージョン6もあります。
バージョンを指定してダウンロードできるリンクもあります。
そのあたりは公式HPを確認ください。
3、設定ファイルの編集
ディレクトリのトップにある「config.sample.inc.php」を「config.inc.php」にリネーム。
このファイルを編集します。
//DBサーバーのローカルIPアドレスを指定
//$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['host'] = '192.168.0.1';
//32桁の文字を入れる
$cfg['blowfish_secret'] = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx';
//日本語にする
//$cfg['DefaultLang'] = 'en';
$cfg['DefaultLang'] = 'ja';
これだけでOKです。
インストール先のディレクトリにアクセスするとログイン画面が現れます。
4、接続できない場合
MariaDBの場合は外部接続を許可する必要があります。
<編集ファイル>
//このファイルを編集
/etc/mysql/mariadb.conf.d/50-server.cnf
bind-address = 127.0.0.1
↓コメントアウトする
#bind-address = 127.0.0.1
デフォルトではlocalhostしか許可しない設定になっています。
上記をコメントアウトするだけで許可できます。
5、注意点など
phpMyAdminはハッキング攻撃がとても多い。
「ipアドレス/phpMyAdmin」といったディレクトリを狙って攻撃してきます。
そのため、絶対に複雑な名前のディレクトリにインストールしてください。
あとは念のためSSLで通信してください。
捨てドメインをオリジンサーバーに入れて、それをSSL化するのが簡単。
オリジンサーバーは当然ながらBASIC認証を。
ファイアーウォールも自分のIPアドレスを指定しておきたい。