ITコラム

XAMPP セキュリティ

PHP

2018.12.19

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

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 のセキュリティ対策

 
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 ボタンをクリックしてみて下さい。

ブラウザで次のような画面が表示されます。
これが phpMyAdmin の画面で、MariaDB の管理を行うことができます。

画面の確認ができたら閉じて下さい。
 

パスワードの設定

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

このようなコマンド入力画面が表示されます。

最後に表示されている「 # 」に続けて「 cd mysql\bin 」と入力して、Enter キーを押して下さい。

次に、「 # 」に続けて「 mysql -u root 」と入力して、Enter キーを押して下さい。

このような表示になり、MariaDB にログインしている状態を表しています。

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

無事にパスワードが設定されると、このような表示になります。

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

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

次に、画面を閉じるために「 exit 」と入力して Enter キーを押して下さい。

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

▲目次へ戻る

 

3. phpMyAdmin の認証設定

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

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

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

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

 

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 )の中にあります。

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

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

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

config.inc.php ファイルを開いたら「 /* Authentication type and info */ 」という記述を検索機能で検索します。

「 /* Authentication type and info */ 」内に記載されている「 ‘auth_type’ 」と「 ‘user’ 」の内容を編集します。

上の青枠で囲まれた部分を、それぞれ次のように書き換えて下さい。

// 編集前
$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 の起動確認 を参照して下さい。)

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

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

無事に phpMyAdmin の画面が表示されました。

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

▲目次へ戻る

卒業生の声

SHARE

最新記事

無料相談する

INTERNOUS,inc. All rights reserved.