Azure

Azure Front Door でカスタムホストを設定しSSLの設定をしつつGeoフィルタリングで他国からのアクセスを制限する。

はじめに

Azure Front DoorにはGeoフィルタリングが設定できるので試してみました。
ついでにカスタムホストを利用する方法も紹介します。

Front Doorの機能については省きます。
下記を参考してください。
https://docs.microsoft.com/en-us/azure/frontdoor/front-door-overview

一点、注意事項するべきことはVNETと連携ができません。
その為、パブリックのIPアドレスを持たないサービスをバックエンドに利用できません。
今回はWeb Appです。

Front Doorの作成

Front Door作成と確認

詳しい作成方法
https://docs.microsoft.com/en-us/azure/frontdoor/quickstart-create-front-door

問題なくアクセスできることを確認します。

カスタムホストを設定する

カスタムホストを設定するには Front Door designerを開き、Fronted hostsの「+」をクリックします。

次にはカスタムホストを設定します。しかし、CNAMEを設定するようにエラーがでます。

事前に対象のDNSの設定をする必要があります。

DNS設定後に、再度カスタムホストを設定します。

設定後に対象のホストネームでアクセスするとエラーが発生します。

ここで、ルールを設定変更をする必要があります。
通常はAzureの指定されたドメインが割り当てられ、それ以外はアクセスできません。
Front Door designerを開きRouting rulesの変更を行います。

割り当てたカスタムホストに変更します。
両方を選択することも可能です。(この後にSSLの設定もおこなうので有効にしておきます)

カスタムホストでアクセスして確認を行います。

カスタムホストのSSL設定を行う

SSLのキーはKey vaultで管理するため、作成します。

PowershellでADにService Principalを登録します。下記は固定値です。

access policyを開き、Principal を追加します。
「ad0e1c7e-6d38-4ba4-9efd-0bc77ba9f037」を検索します。
Microsoft.Azure.Frontdoorが見つかります。これを登録します。

Sercret permissionsをGetに設定します。

追加されたことを確認します。

証明書を登録します。ドキュメントではパスワード無しのみサポートとありますが現在はあっても問題ありません。

Front Door designerを開き追加したカスタムホストを開きます。
そして、Custom Domain HTTPSをEnableに変更します。
Use my own certificateを選択し、Key vault、Secret、Secret Nameを選択します。

以上で設定が完了ですが20分程度反映まで時間がかかります。

表示されることを確認します。

Geoフィルタリング

下記を参考に進めますが、カスタムホストを利用しているため一部異なります。
https://docs.microsoft.com/en-us/azure/frontdoor/front-door-tutorial-geo-filtering

設定はPowershellで設定します。
最初に、モジュールを追加します。

次にJPのみアクセスできるように以下天順で設定します。
GetMatchCoonditionを作成→ルールを作成→FireWallポリシーを作成→各ホストに対して設定する

FrontendEndpoints[0]を設定することでルールを既存のホストへ割り当てることができます。

FrontendEndpoints[1]を設定することでルールをカスタムホストへ割り当てることができます。

設定後反映されるまで5分程度時間がかかります。
VPNなどを利用して日本以外から確認します。

以上で設定は完了です。
ただWeb Appを利用する場合などは、もともとのURL(Web Appで割り当てられたURL)からもアクセスできるため
Front Doorのドメインにリダイレクトするなどの処理を入れる必要があると思います。

まとめ

GeoフィルタリングはGDPRなどを避けたい場合や、キャンペーン用のサイトなど様々な場面で利用できるかと思います。
まだプレビューなので、今後どのように機能が増えるか気になるサービスです。

関連記事

  1. Azure

    Azure Application Gateway 上でLet’s Encryptの証明書ファイルを…

    はじめにくどうです。証明書の更新は簡単です。ついでにLet…

  2. Azure

    Channel9で公開されてた。第1回 Tokyo Jazug Night!

    Tokyo Jazug Nightくどうです。第1回 …

  3. Azure

    AzureにVulsをインストールしてみる。コピペでどーん。

    はじめにくどうです。Vulsです。いろいろ省きます。h…

  4. AWS

    Deep Security as a Service (DSaaS)でProxyを利用する場合の注意…

    はじめにくどうです。DSaaSをProxyを使用する場合の…

  5. AWS

    超メモ:cloud-initでgrowpartを利用する場合の注意

    はじめにくどうです。超メモです。これは、ハマリました。だってc…

  1. Azure

    SCOMで監視できるAzure(リソースマネージャ側)のサービス
  2. Azure

    Azure Monitor とBacklogを連携してアラートを課題登録する。
  3. 未分類

    バックアップを取りましょ その3 (SystemRescueCDでリストア)
  4. 未分類

    Windows Server “Longhorn” Beta 3 をインストール…
  5. Azure

    Azure上のActive Directoryをディレクトリサービス復元モード(…
PAGE TOP