アカウント名:
パスワード:
根本的な問題として、ユーザーのローカルにApacheなんざいれちゃうこと自体が、まず安全な話じゃないと思うんですが。もちろんセキュリティについての知識があって自分のPCを守れる人ならともかく、プログラミング初心者レベルだったりするとセキュリティの知識なんてそんなにないと思うんですよ。もちろん「Webプログラミングで穴を作らないセキュリティの知識」と「自分のPCを不正侵入から守る知識」はかなり別物なのは重々承知ですが。
Apacheなんて脆弱性を「探されてる度合い」で言えば間違いなくトップレベルの品ですし、学習が終わって放置したらそれ自体がセキュリティホールになる、なんてオチも考えられますよね。#Windows上のApacheというのは珍しいからそうでもないのかもしれないけど
簡易式でいいから、localhostにしか応答を返さない独自サーバーを使うべきじゃないだろうか。
仮想環境上で動かしてみました。諸兄の心配事に関して判明した範囲で回答
>学習が終わって放置したらそれ自体がセキュリティホールになる、なんてオチサービスとしては動いていないので学習を終了したらApacheも止まりますね。学習中はポートが空きっぱなしですが・・・あと、localhost 以外のTCP/80も空いていますが、http://localhost/ または http://127.0.0.1/ [127.0.0.1] 以外でアクセスすると 403 になります。# ここまでやるんなら localhost 限定にしてほしかった・・・# アンケートにフィードバックしておこう。
>脆弱性の修正にコンパイルってあるんだけど、バイナリなの?教材の言語は PHP だけでコンパイルはありません。VC++ ランタイム ライブラリーは Windows 版 Apache を動かすために要求されるようです。
> 学習中はポートが空きっぱなしですが・・・インストールのページに、Windowsファイアウォールの警告が出たらブロックを選択しろって書いてるでしょ?ちゃんと指示通りにブロックを選択していればlocalhost以外からは接続できなくなるので心配無用です。> # ここまでやるんなら localhost 限定にしてほしかった・・・というわけでlocalhost限定のはずなのですが、Windowsファイアウォールの警告を出さずにlocalhost限定にする方法はあるので確かにそのほうが望ましいですね。具体的にはhttpd.confのListen 80をListen 127.0.0.1:80Listen [::1]:80とかに書き換えます。最初からlocalhost限定でlistenしている場合、Windowsファイアウォールの警告は出ません。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
※ただしPHPを除く -- あるAdmin
根本的な問題 (スコア:0)
根本的な問題として、ユーザーのローカルにApacheなんざいれちゃうこと自体が、まず安全な話じゃないと思うんですが。
もちろんセキュリティについての知識があって自分のPCを守れる人ならともかく、プログラミング初心者レベルだったりするとセキュリティの知識なんてそんなにないと思うんですよ。もちろん「Webプログラミングで穴を作らないセキュリティの知識」と「自分のPCを不正侵入から守る知識」はかなり別物なのは重々承知ですが。
Apacheなんて脆弱性を「探されてる度合い」で言えば間違いなくトップレベルの品ですし、学習が終わって放置したらそれ自体がセキュリティホールになる、なんてオチも考えられますよね。
#Windows上のApacheというのは珍しいからそうでもないのかもしれないけど
簡易式でいいから、localhostにしか応答を返さない独自サーバーを使うべきじゃないだろうか。
Re:根本的な問題 (スコア:1)
仮想環境上で動かしてみました。
諸兄の心配事に関して判明した範囲で回答
>学習が終わって放置したらそれ自体がセキュリティホールになる、なんてオチ
サービスとしては動いていないので学習を終了したらApacheも止まりますね。
学習中はポートが空きっぱなしですが・・・
あと、localhost 以外のTCP/80も空いていますが、http://localhost/ または http://127.0.0.1/ [127.0.0.1] 以外で
アクセスすると 403 になります。
# ここまでやるんなら localhost 限定にしてほしかった・・・
# アンケートにフィードバックしておこう。
>脆弱性の修正にコンパイルってあるんだけど、バイナリなの?
教材の言語は PHP だけでコンパイルはありません。
VC++ ランタイム ライブラリーは Windows 版 Apache を動かすために要求されるようです。
Re:根本的な問題 (スコア:1, 参考になる)
> 学習中はポートが空きっぱなしですが・・・
インストールのページに、Windowsファイアウォールの警告が出たらブロックを選択しろって書いてるでしょ?
ちゃんと指示通りにブロックを選択していればlocalhost以外からは接続できなくなるので心配無用です。
> # ここまでやるんなら localhost 限定にしてほしかった・・・
というわけでlocalhost限定のはずなのですが、Windowsファイアウォールの警告を出さずにlocalhost限定にする方法はあるので確かにそのほうが望ましいですね。
具体的にはhttpd.confの
Listen 80
を
Listen 127.0.0.1:80
Listen [::1]:80
とかに書き換えます。最初からlocalhost限定でlistenしている場合、Windowsファイアウォールの警告は出ません。