Apacheでサーバーを公開するなら真っ先にやるべきこと

Webサーバーを公開するにあたって絶対に最初にやっておきたいことです。Apache 2の軽量化?そんなのいったん後回しです!

セキュリティの設定でこれだけは必ずというのがこの画面についてです。

not found エラーの画面です

これを見るだけでは、だからどうしたの?といった感じかと思いますが、なんとデフォルトの設定が少し恐ろしい設定になっています。私自身も公開する前に、設定を変えているのでスクショとかは取っていないのですが、これをデフォルトの設定にしていると、Not Foundの下のメッセージにこんな風に表示されます。

Apache/2.4.38 (debian) Server at localhost Port 80

ひぇぇ…

詳しい方だとお分かりかとは思いますが、OS名や、Apacheのバージョンが表示されるのはまずいです。というのも、セキュリティに万全を期しているつもりでもそのOSやApacheのバージョン特有のバグなどもあり得るわけで、最悪乗っ取られたりされることまであるかもしれません。なのでこの表示を冒頭で張ったスクショのように変更しましょう。では以下のコマンドを実行します。

$ sudo nano /etc/apache2/conf-available/security.conf

これを実行するとエディタが開くのでのServerTokens の行を変更します。

#</Directory>


# Changing the following options will not really affect the security of the
# server, but might make attacks slightly more difficult in some cases.

#
# ServerTokens
# This directive configures what you return as the Server HTTP response
# Header. The default is 'Full' which sends information about the OS-Type
# and compiled in modules.
# Set to one of:  Full | OS | Minimal | Minor | Major | Prod
# where Full conveys the most information, and Prod the least.
#ServerTokens Minimal
ServerTokens OS  //ここをOS-> Prodに変更する!
#ServerTokens Full

#
# Optionally add a line containing the server version and virtual host

こんな感じに表示されていると思うので、このServerTokens OSの行のOSをProd に変更します。ターミナルからでもコメントアウトされていて青色の部分がほとんどなので書き換えるところもわかりやすいかと思いますが、先頭に「#」がついていない行を変更です!間違えないでくださいね。その部分を書き換えて以下のようにします。(わかるように前後1行だけ余分に表示委させてます。)

#ServerTokens Minimal
ServerTokens Prod     <-ここの行を変えてください!
#ServerTokens Full

ServerTokensをこのように変更すれば大丈夫です。

あとは設定を反映させます。

sudo service apache2 restart

これで設定が反映されました。

これで真っ先にやるべきことをやったので、軽量化なりは後からでも大丈夫なので折をみてしましょう。

というかなんでこの設定はデフォルトがこれなんだろう…。サーバーを素人が触らないという前提なのかもしれないけど、あまりこの設定を真っ先にやってるっていう記事を見かけなったというのが少し恐ろしいところです。

Apacheの設定自体では検索とかすれば出てくるけど。RaspberryPi関係の記事だと出てこないので形にしておきました。では、お疲れ様でした。

以下とても雑談な内容です。

ちなみにWordPressにはnotfound用の画面があるのでそれでいいんじゃない?いじらなくても大丈夫なのでは?となるかと思うのですが、WordPressがないところにアクセスされれば出てしまいますし、この手のセキュリティ設定はやりすぎても足りないぐらいなものです。またいつかこれの全てをまとめる記事を書くつもりではありますが、自宅でのサーバー運用はリスクがあることをしっかり覚えておいてほしいですし、そのうえでできる限りの対策を打ってほしいのです。しっかり対策をしたうえでwebサーバを運用することは非常に勉強になりますし、知識として知っていおいて損がないことばかりです。口すっぱくこんなこと書いていますが、私はしっかり対策をして今のこのサーバを運用するのは非常に楽しいと思っています。だからこそしっかり設定して、できる限りのことをしたうえで行動してもらって楽しさを知ってもらいたいのです。

よく昨今耳にするハッキングや企業サーバの攻撃。こういった情報を耳にすることは多いかと思います。こういったサーバー管理を仕事とするようなプロの人たちが束になって作ったシステムですら、破られることもあります。NASAに許可を得ずに設置していたRaspberry Piが踏み台にされて情報が盗まれた例もありましたね。Raspberry Piのsecurityが悪いのと言いたいのではなく、ものは使いようということです。家でsambaなどのサーバを立てているのが絶対安心というわけでもありません。もし外から自宅のルータが攻撃されて中に入られたら同じことです。結局普段の生活もそうですが、どんなリスクをとっ生活するのかが大切だと思っています。だからこそ、webサーバを自宅に設置するのは危険!サーバーはセキュリティから見ても借りたほうがいい!とはならないと思います。

どこかのVPSを借りていてそこが攻撃されてカード情報が漏れたりしたら結局変わらないですからね。どんなリスクをとって行動をするか、よく考えてみてください。そういうリスクを色々考えたうえで、Raspberry Piでwebサーバを立ててみようとなりこのサイトを運営しているわけです。しっかり自分で考えて、リスクを知ったうえでサーバを立ててください。

雑談な独り言は以上です。

アーカイブ

コメントする

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