web-dev-qa-db-ja.com

Windowsの更新やCDN上の他のリソースへのアクセスを許可するファイアウォールルール

Windowsの更新を許可するために境界ファイアウォールにファイアウォールの穴をあけるための最良の方法は何ですか?

私の知る限り、Windows更新サイトは、30秒ごとにIPアドレスを変更する可能性のあるコンテンツ配信ネットワークでホストされています。

サイトの静的割り当てでキャンパスDNSを「ポイズニング」すると、最終的にはコンテンツを実際にホストしていないサイトを指すことになります。

変更されないことが保証されている更新コンテンツをホストするIPアドレスはありますか?

より一般的な意味では、IPが絶えず変化するCDNでホストされているリソースへのアクセスを許可するために、ファイアウォールをどのように構成しますか?ファイアウォールはパケットの送受信を行うだけであり、リクエストの送信先のURL(httpsの場合)を必ずしも認識していないため、ファイアウォールには、このパケットがsymantecウイルス定義更新サイトに送信されていることを直接確認する方法がありません。その間、ワールドカップのストリームを見ています。

そして、私の状況では、ネットワーク上のシステムの特定の構成を強制することはできません。ああ、大学で働く喜び...

7
chris

私はこれを試していませんが(上記の私のコメントを参照)、最善の解決策はスタックのさらに上の方にあると考えています。プロキシサーバーを使用することです。

SquidなどをWindows Updateマシン(またはWSUSサーバーの可能性が高い)の前に構成し、*。windowsupdate.Microsoft.comおよび* .windowsupdate.com(および so on )を許可することができます。他のすべてを否定しながら;これは、WSUSサーバーへのブロックTCP 80/443および 強制プロキシ構成 でサーバー上のWinHTTPサービスをブロックすることにより、エッジファイアウォールで実施できます。質問。

短期的には、これをデータセンター内の強化されたサーバーに実装する必要があり、これを使用して実現する可能性があります。

2
gravyface

リバースプロキシサーバーを設定し、DNSを汚染することで、この問題をある程度解決しました。

  1. 各サービスについて、IPアドレスをプロビジョニングし、HAproxyをそのIPにバインドし、そのIPで確認された要求を受け取り、それらをそのサービスのDNSアドレスに転送するようにHAproxyを構成します。 (www.Apple.comへの10.10.10.30プロキシリクエスト、update.Microsoft.comへの10.10.10.31プロキシリクエスト、windowsupdate.comへの10.10.10.32プロキシなど)

  2. 汚染されていないDNSサーバーを使用するようにそのHAproxyサーバーを構成する

  3. これらのサービスが内部HAproxy IPを指すようにキャンパスDNSを毒します(windowsupdate.com-> 10.10.10.32、10.10.10.30-> www.Apple.com、10.10.10.31-> update.Microsoft.comなど)

  4. プロキシサーバーが境界ファイアウォールの送信トラフィック制限の影響を受けないことを確認してください。

私はこれを限定的にテストしましたが、うまくいきます。これが実際の本番環境に導入される場合は、おそらくHAproxyの代わりにF5を使用して行われます。

それでも、これはファイアウォールにアクセスを許可させるだけの場合よりもはるかに複雑ですが、残念ながらそれは不可能のようです。

誰かが私のよりエレガントな解決策を持っていることを願っています...

1
chris

私の推奨は、DMZ内のサーバーにWSUSをインストールし、Microsoft.comへの無制限のアクセスを許可することです

次に、グループポリシーを使用して、他のすべてのクライアントにWSUSサーバーを使用するように指示します。いくつかの利点があります。

  1. 「ファイアウォールの穴」からアクセスできるサーバーは1つだけです
  2. 一元化されたコントロールパネルから、どのアップデートがどのサーバーに送信されるかを制御できます。
  3. 1つのサーバーのみがインターネットからダウンロードするため、帯域幅の使用量が削減され、残りはLAN経由でダウンロードされます。
0
Nate