Azure本番ネットワークの利用者には、自身のAzureアプリケーションにアクセスする外部顧客と、本番ネットワークを管理する内部Azure サポート担当者が含まれます。 本記事では、Azure本番ネットワークへの接続確立のためのセキュリティアクセス方法と保護メカニズムについて説明します。
インターネットルーティングとフォールトトレランス
グローバルに冗長な内部および外部のAzureドメインネームサービス(DNS)インフラストラクチャと複数のプライマリおよびセカンダリDNSサーバークラスターの組み合わせにより、フォールトトレランス性が提供されます。 Azureはまた、インフラレベルのDDoS保護やその他のネットワークセキュリティ制御を適用し、一般的なネットワーク層DDoS攻撃を防ぎ、Azure DNSサービスの整合性を守ります。
Azure DNSサーバーは複数のデータセンター施設に設置されています。 Azure DNSの実装は、Azureの顧客ドメイン名を公開解決するために、二次およびプライマリのDNSサーバーの階層構造を組み込んでいます。 ドメイン名は通常、cloudapp.net アドレスに解決され、そのアドレスには顧客のサービス用の仮想 IP (VIP) アドレスがラップされています。 Azure特有の点として、そのVIPを担当するMicrosoftのロードバランサーは、VIPをテナントの内部専用IP(DIP)アドレスに変換します。
Microsoftは米国内の地理的に分散したAzureデータセンターでAzureをホストしています。 Azureは、強力でスケーラブルなアーキテクチャ標準を実装した最先端のルーティングプラットフォームを使用しています。 主な特徴は以下の通りです:
- マルチプロトコルラベルスイッチング(MPLS)ベースのトラフィックエンジニアリングにより、リンクの効率的な利用と障害が発生した場合のサービスの優雅な劣化を提供します。
- Microsoftは「need plus one」(N+1)冗長性アーキテクチャ以上のネットワークを実装しています。
- 外部には専用の高帯域幅ネットワーク回線がデータセンターをサービスし、世界中の1,200以上のインターネットサービスプロバイダーと複数のピアリングポイントで物件を冗長に接続しています。 この接続により、2,000ギガバイト毎秒(GBps)を超えるエッジ容量が提供されます。
Microsoftはデータセンター間で自社のネットワーク回線を所有しているため、これらの特性によりAzure製品は従来のサードパーティのインターネットサービスプロバイダーを必要としない99.9+%のネットワーク可用性を実現しています。
本番ネットワークおよび関連ファイアウォールへの接続
Azureネットワークのインターネットトラフィックフローポリシーは、米国内の最寄りの地域データセンターにあるAzure本番ネットワークへトラフィックを誘導します。 Azureの本番データセンターは一貫したネットワークアーキテクチャとハードウェアを維持しているため、以下のトラフィックフローの説明はすべてのデータセンターに一貫して適用されます。
Azureのインターネットトラフィックが最寄りのデータセンターにルーティングされた後、トラフィックはアクセスルーターに接続されます。 これらのアクセスルーターは、Azureノードと顧客インスタンス化されたVM間のトラフィックを分離します。 アクセスおよびエッジの位置にあるネットワークインフラデバイスが、イングレスおよびエグレスフィルターが適用される境界点となります。 これらのルーターは階層的なアクセス制御リスト(ACL)を使用して不要なネットワークトラフィックをフィルタリングし、必要に応じてトラフィックレート制限を適用します。 ACLルートはロードバランサーへのトラフィックを許可しました。 ディストリビューションルーターはMicrosoft承認のIPアドレスのみを許可し、スプーフィング防止を提供し、ACLを使用したTCP接続を確立します。
Microsoftはアクセスルーターの背後に外部のロードバランシングデバイスを配置し、インターネットルーティング可能なIPからAzure内部IPへのネットワークアドレス変換(NAT)を行います。 デバイスはまた、パケットを有効な本来の内部IPやポートにルーティングします。 これらのデバイスは、内部の生産ネットワークアドレス空間への露出を制限する保護メカニズムとして機能します。
デフォルトでは、Microsoftは顧客のウェブブラウザに送信されるすべてのトラフィック(サインインおよびその後のすべてのトラフィックを含む)に対してHypertext Transfer Protocol Secure(HTTPS)を強制しています。 TLS v1.2はトラフィックのための安全なトンネルを作成します。 アクセスルーターやコアルーターのACLは、トラフィックの送信元が期待されるソースと一致することを保証します。
このアーキテクチャで従来のセキュリティアーキテクチャと比較する重要な違いは、Azureには専用のハードウェアファイアウォールや、専用の侵入検知・防止装置、通常はAzure本番環境に接続する前に期待されるその他のセキュリティアプライアンスが存在しないことです。 顧客は通常、これらのハードウェアファイアウォールデバイスをAzureネットワーク内に期待しています。 しかし、Azureはこれらのデバイスを採用していません。 これらのセキュリティ機能はほぼ例外なく、Azure環境を動かすソフトウェアに組み込まれており、ファイアウォール機能を含む強力で多層的なセキュリティメカニズムを提供します。 さらに、Azureを実行するソフトウェアは、重要なセキュリティデバイスの境界範囲やそれに伴う広がりをより管理しやすくし、在庫管理も容易にしています。
コアセキュリティおよびファイアウォール機能
Azureは、顧客が従来の環境で期待するセキュリティ機能を様々なレベルで強化し、コアなセキュリティ認可境界を保護するために強力なソフトウェアセキュリティおよびファイアウォール機能を実装しています。
Azureセキュリティ機能
Azureは本番ネットワーク内にホストベースのソフトウェアファイアウォールを実装しています。 コアAzure環境には、いくつかのコアなセキュリティおよびファイアウォール機能が存在します。 これらのセキュリティ機能は、Azure環境内での防御深層戦略を反映しています。 以下のファイアウォールがAzureで顧客データを保護しています:
ハイパーバイザーファイアウォール(パケットフィルター):ハイパーバイザーがこのファイアウォールを実装し、ファブリックコントローラー(FC)エージェントが設定します。 このファイアウォールは、VM内で動作するテナントを不正アクセスから守ります。 デフォルトでは、VMが作成されるとAzureがすべてのトラフィックをブロックし、その後FCエージェントがフィルターにルールや例外を追加して認可されたトラフィックを許可します。
Azureは2つのルールカテゴリーをプログラムします:
- マシン設定やインフラルール:デフォルトではAzureはすべての通信をブロックします。 例外により、VM は、動的ホスト構成プロトコル (DHCP) 通信と DNS 情報を送受信し、FC クラスター内の他の VM および OS アクティベーション サーバー宛てに「パブリック」インターネットへのアウトバウンド トラフィックを送信できます。 VMの送信先の許可リストにはAzureルーターのサブネットやその他のMicrosoftプロパティが含まれていないため、ルールはそれらの防御層として機能します。
- 役割設定ファイルルール:これらのルールは、テナントのサービスモデルに基づいて受信ACLを定義します。 例えば、あるテナントのウェブフロントエンドが特定のVMのポート80にある場合、ポート80はすべてのIPアドレスに開放されます。 VMにワーカーロールが実行されている場合、ワーカーロールは同じテナント内のVMにのみ開放されます。
ネイティブホストファイアウォール:Azure Service FabricとAzure Storageは、ハイパーバイザーを持たないネイティブOS上で動作するため、前の2つのルールセットがWindowsファイアウォールの設定に使われます。
ホストファイアウォール:ホストファイアウォールはホストパーティションを保護し、そこでハイパーバイザーを実行します。 ルールでは、特定のポート上のホストパーティションと通信できるのはFCとジャンプボックスのみです。 その他の例外はDHCP応答とDNS応答を許可する場合です。 Azureはマシン設定ファイルを使用しており、そのファイルにはホストパーティション用のファイアウォールルールのテンプレートが含まれています。 ホストファイアウォール例外も存在し、VMが特定のプロトコルやポートを通じてホストコンポーネント、有線サーバー、メタデータサーバーと通信できます。
ゲストファイアウォール:ゲストOSのWindowsファイアウォールコンポーネントで、顧客が顧客のVMやストレージ上で設定できます。
Azure機能に組み込まれたさらなるセキュリティ機能には以下が含まれます:
AzureはDIPからインフラコンポーネントにIPアドレスを割り当てます。 インターネット上の攻撃者は、Microsoftに到達できないため、そのアドレスへのトラフィックをアドレス指定できません。 インターネットゲートウェイルーターは内部アドレスのみにアドレス指定されたパケットをフィルタリングし、本番ネットワークに入らないようにします。 VIPに向けられたトラフィックを受け入れるのはロードバランサーだけです。
すべての内部ノードに実装されたファイアウォールには、特定のシナリオに対して3つの主要なセキュリティアーキテクチャの考慮事項があります。
- ファイアウォールはロードバランサーの背後にあり、どこからでもパケットを受け付けます。 これらのパケットは外部に露出することを意図しており、従来のペリメーターファイアウォールのオープンポートに対応します。
- ファイアウォールは限られたアドレスセットからのパケットのみを受け付けます。 この考慮はDDoS攻撃に対する防御的深層戦略の一部です。 このような接続は暗号的に認証されています。
- ファイアウォールにアクセスできるのは選ばれた内部ノードだけです。 彼らは、Azureネットワーク内のDIPである、列挙された送信元IPアドレスのリストからのパケットのみを受け付けます。 例えば、企業ネットワークへの攻撃はこれらのアドレスにリクエストを誘導できますが、Azureはパケットの送信元アドレスがAzureネットワーク内の列挙リストにある場合を除き、攻撃をブロックします。
- 境界のアクセスルーターは、設定された静的経路のためにAzureネットワーク内のアドレスに宛てられた送信パケットをブロックします。
次のステップ
MicrosoftがAzureインフラをどのように保護しているかについて詳しく知りたい方は、以下をご覧ください: