PHP【 開発環境 】XAMPP セキュリティ対策(Ver.5.6.11以降)

XAMPP セキュリティ

PHP でプログラミングを行うためには開発環境を導入する必要があり、本サイトでは XAMPP( ザンプ )という開発環境でプログラミングを行います。
今回は、XAMPP のセキュリティ対策について紹介したいと思います。
尚、2015年7月に更新された XAMPP の Ver.5.6.11 でデーターベースが MySQL から MariaDB になった関係で、Ver.5.6.11 前後でセキュリティ対策の方法が違いますのでご注意下さい(本サイト執筆時の XAMPP 最新バージョンは 7.2.12 です)。

XAMPP のインストール方法や起動方法については以下の記事をご参照下さい。
PHP【 開発環境 】XAMPP インストール
PHP【 開発環境 】XAMPP の使い方

目次

 1.XAMPP のセキュリティ対策
 2.MariaDB にパスワードを設定
 3.phpMyAdmin の認証設定

1.XAMPP のセキュリティ対策

 
XAMPP には MariaDB というデータベースが入っているので、中のデータを安全に保持しておくために セキュリティ対策が必要となります。

具体的には、セキュリティ対策として次の 2 点を行います。

・MariaDB のパスワードの設定
・phpMyAdmin の認証設定

まず、MariaDB へのアクセス制限をかけるために パスワードを設定します。

そして、MariaDB のパスワードを設定すると phpMyAdmin( MariaDB の管理画面 )へのアクセスも制限されてしまうため、その対応として phpMyAdmin の認証設定を行います。

▲目次へ戻る

 

2.MariaDB にパスワードを設定

 
XAMPP のコントロールパネルを開いて、Apache と MariaDB( 表示は MySQL )の Start ボタンをそれぞれクリックして下さい。
(コントロールパネル開き方等は XAMPP の起動確認 を参照して下さい。)
 

phpMyAdmin 画面の確認

Apache と MariaDB( 表示は MySQL )の起動が確認できたら、MariaDB( 表示は MySQL )の Admin ボタンをクリックしてみて下さい。
PHP XAMPP セキュリティ 1

ブラウザで次のような画面が表示されます。
これが phpMyAdmin の画面で、MariaDB の管理を行うことができます。
PHP XAMPP セキュリティ 2
画面の確認ができたら閉じて下さい。
 

パスワードの設定

MariaDB にパスワードを設定します。
コントロールパネル右側の Shell ボタンをクリックして下さい。
PHP XAMPP セキュリティ 3

このようなコマンド入力画面が表示されます。
PHP XAMPP セキュリティ 4

最後に表示されている「 # 」に続けて「 cd mysql\bin 」と入力して、Enter キーを押して下さい。
PHP XAMPP セキュリティ 5

次に、「 # 」に続けて「 mysql -u root 」と入力して、Enter キーを押して下さい。
PHP XAMPP セキュリティ 6

このような表示になり、MariaDB にログインしている状態を表しています。
PHP XAMPP セキュリティ 7

「 MariaDB[(none)]> 」に続けて「 set password=password(‘パスワード’); 」と入力して Enter キーを押して下さい。
‘パスワード’ 部分には、実際に設定するパスワードを入力します。
(ここではパスワードを「 testpass 」として入力しています。)
PHP XAMPP セキュリティ 8

無事にパスワードが設定されると、このような表示になります。
PHP XAMPP セキュリティ 9

パスワードの設定が終了したので、コマンド入力画面を閉じます。

まず、MariaDB にログインしている状態を終了させるために「 quit 」と入力して Enter キーを押して下さい。
PHP XAMPP セキュリティ 10

次に、画面を閉じるために「 exit 」と入力して Enter キーを押して下さい。
PHP XAMPP セキュリティ 11

コマンド入力画面が閉じられます。
これでパスワードの設定は終了です。

▲目次へ戻る

 

3.phpMyAdmin の認証設定

 
MariaDB にパスワードを設定したところで、MariaDB( 表示は MySQL )の Admin ボタンをクリックしてみて下さい。
PHP XAMPP セキュリティ 1

パスワード設定前と違って、次のようなエラーメッセージが表示されます。
PHP XAMPP セキュリティ 12

このエラーを解消して phpMyAdmin 画面が使用できるように、phpMyAdmin の認証設定を行います。

まず、Apache と MySQL を停止して、XAMPP のコントロールパネルを閉じて下さい。
Apache 及び MySQL の Stop ボタンをそれぞれクリックしてサービスの停止を確認後、右側の Quit ボタンをクリックして画面を閉じます。
PHP XAMPP セキュリティ 13
 

config.inc.php の編集

先ほどのエラーメッセージにも表示されていた config.inc.php ファイルを編集します。

config.inc.php ファイルは、phpMyAdmin に関する設定内容が記載されているファイルで、この内容に基づいて phpMyAdmin が動いているのですが、MariaDB のパスワード設定後も 設定前と同じように MariaDB にアクセスしようとしたために、エラー画面が表示されてしまいました。

ですので、config.inc.php ファイルを、MariaDB へのアクセス制限に合致するような内容に編集して、エラーを解消します。

config.inc.php ファイルは、XAMPP をインストールしたフォルダ内の phpMyAdmin フォルダ( 特に指定していない場合は C:\xampp\phpMyAdmin )の中にあります。
PHP XAMPP セキュリティ 14

config.inc.php ファイルをメモ帳以外のテキストエディタで開きます。

PC にメモ帳以外のテキストエディタが入っていない場合は、フリーウェアではサクラエディタがおススメです。
( サクラエディタの導入方法については、PHP【 開発環境 】テキストエディタ をご参照下さい。)

config.inc.php ファイルを右クリックして「 プログラムから開く 」からメモ帳以外のテキストエディタを選択して 開いて下さい。
(サクラエディタを導入した場合は、こちらに「サクラエディタ」が表示されるので、それを選択します。)
PHP XAMPP セキュリティ 15

config.inc.php ファイルを開いたら「 /* Authentication type and info */ 」という記述を検索機能で検索します。
PHP XAMPP セキュリティ 16

「 /* Authentication type and info */ 」内に記載されている「 ‘auth_type’ 」と「 ‘user’ 」の内容を編集します。
PHP XAMPP セキュリティ 17
上の青枠で囲まれた部分を、それぞれ次のように書き換えて下さい。

(編集前)
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';

(編集後)
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = '';

「’config’」を「’cookie’」に、「’root’」を「”」に、それぞれ書き換えます。

編集後、上書き保存をしてファイルを閉じて下さい。
 

phpMyAdmin の画面確認

再度 XAMPP のコントロールパネルを開いて、Apache と MariaDB( 表示は MySQL )の Start ボタンをクリックして起動させた後、MariaDB( 表示は MySQL )の Admin ボタンをクリックしてみて下さい。
(コントロールパネル開き方等は XAMPP の起動確認 を参照して下さい。)
PHP XAMPP セキュリティ 18

config.inc.php ファイル編集前のエラーが解消されて、このようなログイン画面が表示されます。
PHP XAMPP セキュリティ 19

ユーザ名には「 root 」を入力し、今回設定した MariaDB のパスワードを入力して、実行ボタンをクリックして下さい。
PHP XAMPP セキュリティ 20

無事に phpMyAdmin の画面が表示されました。
PHP XAMPP セキュリティ 21

これで phpMyAdmin の認証設定は終了です。

▲目次へ戻る

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です