web-dev-qa-db-ja.com

Webに面したWindowsサーバーを保護するための「すべきこと」は何ですか?

現在、Webに面したWindowsサーバーの展開を開始しています。

サーバーを保護する方法を教えてください。どのソフトウェアを使用していますか?

Linuxでは、Fail2banを使用してブルートフォースを防ぎ、Logwatchがサーバーで何が行われているのかに関する毎日のレポートを取得しています。 Windowsでこれらのソフトウェアに相当するものはありますか?そうでない場合、サーバーを保護するために何を使用することをお勧めしますか?

17
Kedare

まず、ネットワーク設計について考える必要があります。内部ネットワークを保護するために、少なくとも1つDMZ inderを使用することをお勧めします。新しい2012を購入したくない場合、一般に適したWindowsシステムはWindows Server 2008 R2です。サーバー:すべて2008 R2に基づいて、Webサーバーとして完全に機能する少なくとも4つのWindowsベースのWebサーバーがあります。次のことを必ず実行してください。

  • DMZ(1または2)を使用します
  • 未使用のサーバーの役割をインストールしない
  • 不要なサービスは必ず停止してください
  • 内部ネットワークにのみ(必要な場合)RDPポートを開くようにしてください
  • 未使用のポートはすべて閉じておいてください。
  • サーバーの前でシスコ、ジュニパー、チェックポイントなどの適切なファイアウォールソリューションを使用する
  • サーバーを最新の状態に保つ(少なくとも毎月の更新)
  • 冗長化する(バックアップ用に少なくとも2つのサーバーを使用)
  • 良い監視:Nagios(私はそれが好きです;-))

(オプション)WebサーバーとそのバックアップシステムにHyper-Vを使用します。更新が非常に簡単になり、更新が何らかの形でWebサービスに干渉しないかどうかを確認できます。その場合、ハードウェア障害が発生した場合に冗長性を持たせるには、2つの同一のハードウェアマシンが必要になります。しかし、それは多分かなり高価です。

お役に立てば幸いです。

19
Andre

この一般向けのWindowsボックスで提供するサービスを教えていただければ、より詳細な回答を提供することができます。例えばIIS、OWA、DNSなど?

ボックス自体をロックダウンするには、ボックス上の不要なサービス/役割を削除する(またはインストールを最初から行わない)ことから、vladの回答から始めます。これには、サーバーで使用してはならないサードパーティ製ソフトウェア(Acrobatリーダー、フラッシュなど)が含まれます。もちろん、パッチを当てておいてください。

ファイアウォールポリシーを構成して、実行しているサービスの適切なポートへのトラフィックのみを許可する

実行中のサービスに関連付けられたルールを使用してIDS/IPSを構成します。

資産のリスク/価値に応じて、境界に加えてホストベースのIPSに加えて、別のベンダーからインストールすることを検討してくださいIPS.

主な目的がWebサイトをホストすることであると仮定すると、IISのロックダウンは7.5(2008 R2)での問題が大幅に軽減されますが、以下のようないくつかのことを確実に行う必要があります。

  • OSファイルとは別のボリュームにWebサイトファイルを保存する
  • Microsoft、NSAなどからXMLセキュリティテンプレートをベースラインとして取得
  • \InetPub\AdminScriptsのすべてのスクリプトをNTFS経由で削除またはロック
  • Appcmd、cmd.exeなどの危険なexeをロックダウンする
  • IPSecを使用してDMZと承認された内部ホスト間のトラフィックを制御する
  • ADが必要な場合は、内部ネットワークとは別のフォレストをDMZで使用します
  • すべてのサイトにホストヘッダー値が必要であることを確認します(自動スキャンの防止に役立ちます)
  • 次の成功したイベントを除くすべての失敗したイベントと成功したイベントのWindows監査を有効にします。Directorサービスアクセス、プロセストラッキング、システムイベント。
  • ファイルシステムでNTFS監査を使用して、Everyoneグループによる失敗したアクションをログに記録し、セキュリティログのサイズをバックアップに基づいて適切なサイズ(500Mb程度)に増やしてください。
  • ルートフォルダーのHTTPログを有効にする
  • アプリプールを実行しているユーザーアカウントに不要な権限を与えないでください。
  • ISAPIおよびCGIモジュールが不要な場合は、それらを削除してください。

私はこれを長くしすぎないようにしたいので、特定の箇条書きの詳細が必要な場合は、コメントを残してください。

7
Paul Ackerman

ここでの既存の答えは良いですが、1つの重要な側面が欠けています。サーバーが侵害された場合は危険にさらされますか?

ここでのServerFaultの回答は、ほとんどの場合、質問の回答を複製するものです 私のサーバーはハッキングされましたEMERGENCY! 上部の回答の説明では、問題の原因/方法を見つける方法について説明しています妥協とバックアップからの復元方法。

これらの指示に従うには、広範囲にわたるログと定期的なバックアップが必要です。攻撃者が何をいつ行ったかを判断するために使用できる十分なログが必要です。そのためには、さまざまなマシンのログファイルを関連付ける方法が必要であり、これにはNTPが必要です。おそらく、何らかのログ相関エンジンも必要になるでしょう。

ログとバックアップの両方は、通常、侵害されたマシンからは利用できません。

サーバーが侵害されたことがわかったら、サーバーをオフラインにして調査を開始します。攻撃者がいつどのようにしてそれを入手したかがわかったら、スペアマシンの欠陥にパッチを適用してオンラインにすることができます。スペアマシンでもデータが危険にさらされている場合(ライブマシンから同期されているため)、データをオンラインにする前に、危険にさらされたより古いバックアップからデータを復元する必要があります。

上記のリンクされた回答をたどって、実際に手順を実行できるかどうかを確認し、できる限り追加/変更してください。

5
Ladadadada

このサーバーの役割/アプリケーションをインストール、構成、およびテストした後、SCW(セキュリティ構成ウィザード)を実行します。

2
joeqwerty