前のページへ
Page  1  2  3  4  5 

XAMPのセキュリティ設定

XAMPPはサーバー統合ソフトです
起動すると公開設定の情報は第三者から丸見えです
セキュリティ設定をして第三者からPCを覗かれないようにしましょう

とその前に、この時点で公開されている情報とはなんなのか?というと
XAMPPフォルダの中のhtdocsフォルダの内容が公開されています
マイドキュメントが丸見えで秘蔵画像が・・・!なんてことはないので安心してください

XAMPPの起動

先ほどのセットアップウィザードでコントロールパネルを開くようチェックを入れてFinishを押したのでXAMPPは自動的に起動します
チェックを外していた場合はスタートメニューのプログラムから探してXAMPP/XAMPP Control Panelを実行するか、 インストールフォルダを開いてxampp-control.exeを実行します

初回起動時には次のような警告が出ます
Microsoftが責任逃れのために言い訳をしているので了承して実行しましょう
XAMPPセキュリティ設定解説画像01

今しがた危険を承知で実行ボタンを押したのに、更に今度は署名が確認できませんでした と警告してきました
仕方がないのでもう一度実行ボタンを押します
XAMPPセキュリティ設定解説画像02

さすがに三度目の警告は出てきませんでした
今度出てきたら画面ぶち破ってやる
無事XAMPPのコントロールパネルが起動しました
XAMPPセキュリティ設定解説画像03

この時点ではまだサーバーソフトは起動していません
サーバーを起動しないことには設定が行えないのでとりあえずHTTPサーバーを起動してみましょう
HTTPサーバーはApacheというソフトなのでApacheの右の方にあるStartボタンを押します
ボタンを押すとApacheの文字が黄色い背景になりました
黄色は準備中なので、緑色の背景になるまでしばらく待ってください
XAMPPセキュリティ設定解説画像04
この時点でサーバーがネットワークに公開されています
心配な人はオフラインで作業してみてください
(まあこの時点でいきなり攻撃を受けることはないと思うけどね)

準備完了したらAdminボタンを押します
するとブラウザが立ち上がり、XAMPPの管理ページが表示されます
XAMPPセキュリティ設定解説画像05

XAMPP管理ページ

初回起動時は使用する言語を聞いてきます
お好きな言語を使ってください(日本語以外を選ぶような人がここ見てるだろうか)
と、ここでアドレス入力欄に注目してください
localhostで始まってますね
つまり、今見ているページは既にローカルサーバーのページです
インターネットにつながってなくても見ることが出来ます
LANケーブルをぷっつんしちゃっても見れます(新しいLANケーブルは自分で買ってね)
XAMPPセキュリティ設定解説画像06

言語を選択したら次のような画面になります
左のナビゲーションからステータスを選べといわれるけど無視してセキュリティの所を押します
(ちなみに違う言語を選んでしまった!なんて時は右上のほうに言語選択が出てますよ)
XAMPPセキュリティ設定解説画像07

セキュリティの設定画面へ行くとなにやらステータスが表示されています
要注意と赤く表示されている項目は今すぐに対策を施さなくてはいけません
ちょっと下にいくとhttp://localhost/security/xamppsecurity.phpというリンクがあります
このリンクから重要なパスワード設定を行えるのでクリックしましょう
XAMPPセキュリティ設定解説画像08

パスワード設定画面が出てきましたが
なにか注意されてます
MySQLが起動してないよ!って言われてます
とりあえず、後で対応するとしてXAMPPのディレクトリ制御の方だけでも設定しちゃいましょう
XAMPPセキュリティ設定解説画像09

名前やパスワードは3文字以上15文字以下の英数でないといけないようです
なるべく複雑な設定にしましょう
それから(File: C:\xampp\security\security\xamppdirpasswd.txt)というチェック項目がありますが
どうやらパスワードをテキストファイルに記録しておくかどうかの質問のようです
自分は間違えてチェック入れて行ってしまいましたが、できればチェックを外しておいたほうが安全です
パスワードなどは記憶する、どこか安全な場所にメモするなどして忘れないようにしましょう
XAMPPセキュリティ設定解説画像10
設定が成功すると次の画面のようになります
青文字で設定が反映されたファイルが出ますがxamppdirpasswd.txtは先ほどチェックしたため表示されてます
xamppdirpasswd.txtは中にそのままパスワードが表記されてしまうのでない方が良いです
XAMPPセキュリティ設定解説画像11

ここまで出来たら一度ページをリロードするか、どこかページ中のリンクを開くなどしてみてください
認証画面が表示されてユーザー名とパスワードを聞かれます
先ほど設定したユーザー名とパスワードを入力しないと表示できないようになりました
これで第三者が簡単にXAMPPのページを覗き見ることが出来なくなったわけです
XAMPPセキュリティ設定解説画像12
ユーザー名とパスワードを入力して次へ

今度はもう一度セキュリティのページを開いて状態をチェックしてみます
赤色で要注意が表示されなければとりあえず大丈夫なのですが・・・
XAMPPセキュリティ設定解説画像13
要注意がありますね
MySQLの設定をしていないからダメなようです
自分としてはHTTPサーバーが動けば良いのでMySQLは使わないんだけど、まあ設定しておきましょう
一応

一度ブラウザから離れまして、XAMPPコントロールパネルに戻ります
MySQLをStartさせましょう
XAMPPセキュリティ設定解説画像14

MySQLが準備完了になったらまたXAMPP管理ページのセキュリティページ(http://localhost/security/xamppsecurity.php)へ
今度はMySQLの設定項目も出てきました
XAMPPセキュリティ設定解説画像15
XAMPPのディレクトリ制御は設定済みなので今回は入力しなくても良いです
MySQLの方だけ入力しましょう
と、また画像ではテキストファイルにパスワードを保存してしまっていました
なるべく保存しない方が良いでしょう
チェックしないで設定してください
XAMPPセキュリティ設定解説画像16
パスワードの変更を行うと次のようなメッセージが表示されます
新しいパスワードを有効にするためには一度MySQLの再起動が必要だそうです
XAMPPコントロールパネルに戻り、MySQLのStopを押して停止させ、止まったらまたStartを押します
それで再起動完了です
XAMPPセキュリティ設定解説画像17

MySQLの再起動が済んだら作業は終了ですが、一応セキュリティを確認しましょう
もう一度XAMPP管理ページのセキュリティ画面を開きます
XAMPPセキュリティ設定解説画像18
要注意が消えて安全になりました
ひとまずこれでHTTPサーバーはある程度のセキュリティが確保されました
パスワードがばれない限りは安全です
このまま運用してもいいのですがもうちょっと安全に、そして使いやすくするためにはまだまだお付き合いください

FTPサーバーは不明と出てますね
FTPサーバーはFileZillaというソフトで実現されます
また、メールサーバーとしてMercuryというソフトがあります
これらはXAMPP管理ページからはセキュリティ設定が行えないので個別に対応しないといけないそうです
ただ、WebGLを使う上で必要ない機能なので今回は設定はしません
起動しなければ特に攻撃されることもないので問題ないでしょう

サーバー設定

通信設定

さて、既にここまでの設定でパスワードによる保護が働いているはずですが、 パスワードが破られれば中身を見られてしまいます
やはり外部からのアクセスそのものをシャットアウトしておきたいですね
というわけで、サーバー設定を書き換えて通信を制御しておきましょう

XAMPPコントロールパネルを起動してApacheのConfigボタンを押しましょう
コンテキストメニューが出ますのでApache(httpd.conf)を選択します
XAMPPサーバー設定解説画像01
(このとき別にApacheは動いてなくてもいいですよ)

httpd.confという設定用テキストファイルが開かれます
これを編集することでサーバー設定を変更します
(httpd.confはインストールフォルダ/apache/confに置いてあります)
XAMPPサーバー設定解説画像02
こんな感じ
英語だらけでお前は何を言ってるんだ?と言いたくなる所ですが
まあ今はおいておきましょう

このファイルの58行目にListen 80と書かれています
(バージョンによって位置が違うかもしれません そんな時は"Listen"で検索して探すと良いかも)
49 : #
50 : # Listen: Allows you to bind Apache to specific IP addresses and/or
51 : # ports, instead of the default. See also the
52 : # directive.
53 : #
54 : # Change this to Listen on specific IP addresses as shown below to
55 : # prevent Apache from glomming onto all bound IP addresses.
56 : #
57 : #Listen 12.34.56.78:80
58 : Listen 80
これはどういう意味かというと全てのIPアドレスから80番目のポートを介しての要求を聞き入れますよって事になるらしい
これでは外部から情報が筒抜けな訳ですね
ではここを書き換えてローカルからしか言うことを聞かないようにしましょう

Listen 80Listen localhost:80に書き換えましょう
上書き保存して閉じます
これでlocalhostというIPからのポート80を介した通信のみ許可するようになりました
もしApacheやMySQLが動いているなら再起動してください
次回起動時から設定が反映されます

もうこれでほとんどセキュリティは万全・・・かな?
あとはファイアウォールなりセキュリティソフトなり用意して各自対策するように


次のページへ
Page  1  2  3  4  5 

2013/12/15掲載

FC2カウンター
inserted by FC2 system