Azure基本

Azure App Serviceでカスタムドメインを設定してみた

Azure App Serviceを作成すると、以下のように、「既定のドメイン」にアクセスURLが自動的に設定される。
導入の説明

ここで、「カスタムドメイン」を設定することで、このアクセスURLとは別のURLで、Azure App Serviceにアクセスできるようになる。今回は、Azure App Serviceにカスタムドメインを追加してみたので、その手順を共有する。

前提条件

以下の記事の実装が完了していること。

異なるドメインをもつ複数のAzure App Service間でデータ共有してみたセッションデータをAzure Cache for Redisに格納するJavaアプリケーションを、複数のAzure App Servic...

また、Xサーバー上で、以下の赤枠のように、利用可能なドメインが設定されていること。
前提条件

やってみたこと

  1. サブドメインの追加
  2. DNSレコード(CNAME)の追加
  3. カスタムドメイン追加時のTXTの確認
  4. DNSレコード(TXT)の追加
  5. カスタムドメインの追加
  6. 証明書(マネージド証明書)の追加
  7. カスタムドメインへの証明書追加

サブドメインの追加

Xサーバー上で利用可能なドメインがあれば、そのドメインにサブドメインを追加し、追加したサブドメインを、Azure App Serviceのカスタムドメインに設定できる。サブドメインの追加方法は、以下の通り。

1) 以下のURLにアクセスし、Xサーバーにログインする。
https://secure.xserver.ne.jp/xapanel/login/xserver/server/

サブドメインの追加_1

2)「サブドメイン設定」メニューを押下する。
サブドメインの追加_2

3) サブドメインを設定するドメインの「選択する」リンクを押下する。
サブドメインの追加_3

4)「サブドメイン設定追加」タブを押下する。
サブドメインの追加_4

5) サブドメイン名を指定し、「確認画面へ進む」ボタンを押下する。
サブドメインの追加_5

6) 内容を確認し、問題なければ「追加する」ボタンを押下する。
サブドメインの追加_6

7) 追加が完了すると、以下の画面に遷移し、「サブドメイン設定一覧」タブを開くと、追加したサブドメインが確認できる。
サブドメインの追加_7_1

サブドメインの追加_7_2

8) サブドメインを追加後、1時間程度待つと、以下のように、「反映待ち」が消えることが確認できる。(なお、下図では、サブドメイン「subapp2.purin-it.com」も追加した後となっている。)
サブドメインの追加_8

DNSレコード(CNAME)の追加

追加したサブドメインを、Azure App Serviceのカスタムドメインに設定するには、Azure App Serviceと紐づけするためのDNSレコード(CNAME)を設定する必要がある。その手順は、以下の通り。

1) Xサーバーのサーバーパネル上で、「DNSレコード設定」メニューを押下する。
DNSレコード(CNAME)の追加_1

2) DNSレコードを設定するドメインの「選択する」リンクを押下する。
DNSレコード(CNAME)の追加_2

3)「DNSレコード追加」タブを押下する。
DNSレコード(CNAME)の追加_3

4) ホスト名に「サブドメイン」、種別に「CNAME」、内容に「紐づけするAzure App Serviceの既定のドメイン」を指定し、TTL・優先度はそのままで、「確認画面へ進む」ボタンを押下する。
DNSレコード(CNAME)の追加_4_1

なお、「紐づけするAzure App Serviceの既定のドメイン」は、Azure Portal上で、Azure App Serviceの以下の場所で確認できる。
DNSレコード(CNAME)の追加_4_2

5) 内容を確認後、「追加する」ボタンを押下する。
DNSレコード(CNAME)の追加_5

6) 追加が完了すると、以下の画面が表示される。
DNSレコード(CNAME)の追加_6



カスタムドメイン追加時のTXTの確認

追加したサブドメインを、Azure App Serviceのカスタムドメインに設定する際、先ほどのDNSレコード(CNAME)に加え、セキュリティ上TXTレコードが必要になる。その際のTXTレコードの確認手順は、以下の通り。

1) Azure Portalにログインし、カスタムドメインを設定するAzure App Serviceを表示後、「カスタム ドメイン」メニューを押下する。
カスタムドメイン追加時のTXTの確認_1

2)「カスタム ドメインの追加」ボタンを押下する。
カスタムドメイン追加時のTXTの確認_2

3) カスタムドメインを追加する画面の初期表示は、以下の状態になる。
カスタムドメイン追加時のTXTの確認_3

4) 以下のように設定するドメイン情報を指定すると、セキュリティ上必要なTXTレコードが表示されるため、このホスト名と値をメモしておく。
カスタムドメイン追加時のTXTの確認_4

なお、セキュリティ上TXTレコードが必要な理由については、以下のサイトを参照のこと。
https://learn.microsoft.com/ja-jp/azure/app-service/app-service-web-tutorial-custom-domain?tabs=root%2Cazurecli

DNSレコード(TXT)の追加

追加したサブドメインを、Azure App Serviceのカスタムドメインに設定する際に必要なTXTレコードは、Xサーバー上で設定する。その手順は、以下の通り。

1) Xサーバーのサーバーパネル上で、「DNSレコード設定」メニューを押下する。
DNSレコード(TXT)の追加_1

2) DNSレコードを設定するドメインの「選択する」リンクを押下する。
DNSレコード(TXT)の追加_2

3)「DNSレコード追加」タブを押下する。
DNSレコード(TXT)の追加_3

4) 種別に「TXT」、ホスト名と内容にAzure Portalで確認した各値を指定し、TTL・優先度はそのままで、「確認画面へ進む」ボタンを押下する。
DNSレコード(TXT)の追加_4_1

ちなみに、ホスト名と内容に設定する各値は、以下の赤枠の内容となる。
DNSレコード(TXT)の追加_4_2

5) 内容を確認後、「追加する」ボタンを押下する。
DNSレコード(TXT)の追加_5

6) 追加が完了すると、以下の画面が表示される。
DNSレコード(TXT)の追加_6

カスタムドメインの追加

追加したサブドメインを、Azure App Serviceのカスタムドメインに設定する。その手順は、以下の通り。

1) Azure Portalにログインし、カスタムドメインを設定するAzure App Serviceを表示後、「カスタム ドメイン」メニューを押下する。
カスタムドメインの追加_1

2)「カスタム ドメインの追加」ボタンを押下する。
カスタムドメインの追加_2

3) カスタムドメインを追加する画面の初期表示は、以下の状態になる。
カスタムドメインの追加_3

4) 以下のように設定するドメイン情報を指定し、「検証」ボタンを押下する。
カスタムドメインの追加_4

5) 検証が完了すると以下の画面表示になるため、「追加」ボタンを押下する。
カスタムドメインの追加_5

6) カスタムドメインの追加が完了すると、以下の画面表示になる。
カスタムドメインの追加_6

7) 概要メニューからも、カスタムドメインの設定が確認できる。
カスタムドメインの追加_7



証明書(マネージド証明書)の追加

先ほどまでの手順で、カスタムドメインの設定はできたが、証明書の設定を行っていないため、カスタムドメインの状態が「バインディングなし」となっている。
これを解消するため、無料の「マネージド証明書」を追加する。その手順は、以下の通り。

1) Azure Portalにログインした状態で、カスタムドメインを設定したAzure App Serviceを表示後、「証明書」メニューを押下する。
証明書(マネージド証明書)の追加_1

2)「マネージド証明書」を選択した状態で、「証明書の追加」ボタンを押下する。
証明書(マネージド証明書)の追加_2

3) マネージド証明書を追加する画面の初期表示は、以下の状態になる。
証明書(マネージド証明書)の追加_3

4) カスタムドメインを選択し、証明書のフレンドリ名が表示された状態で、「検証」ボタンを押下する。
証明書(マネージド証明書)の追加_4

5) 検証が完了すると以下の画面表示になるため、「追加」ボタンを押下する。
証明書(マネージド証明書)の追加_5

6)「追加」ボタンが非活性になるため、右の「×」ボタンを押下し、この画面を閉じる。なお、10分程度待つと、マネージド証明書の作成と発行が完了する。
証明書(マネージド証明書)の追加_6

なお、無料の「マネージド証明書」が作成できる条件については、以下のサイトを参照のこと。
https://learn.microsoft.com/ja-jp/azure/app-service/configure-ssl-certificate?tabs=apex#create-a-free-managed-certificate

カスタムドメインへの証明書追加

先ほど作成したマネージド証明書を、設定済のカスタムドメインに追加する。その手順は、以下の通り。

1) Azure Portalにログインした状態で、カスタムドメインを設定したAzure App Serviceを表示後、「カスタムドメイン」メニューを押下する。
カスタムドメインへの証明書追加_1

2)「バインディングの追加」リンクを押下する。
カスタムドメインへの証明書追加_2

3) 証明書を追加し、「追加」ボタンを押下する。
カスタムドメインへの証明書追加_3_1

カスタムドメインへの証明書追加_3_2

4) TLS/SSLバインディングが完了すると、以下のように表示され、状態が「セキュリティ保護」になることが確認できる。
カスタムドメインへの証明書追加_4

5) 設定が完了すると、以下のように、呼出元画面にカスタムドメインを指定し表示されることが確認できる。
カスタムドメインへの証明書追加_5

要点まとめ

  • Azure App Serviceに「カスタムドメイン」を設定することで、既定のドメインとは別のURLで、Azure App Serviceにアクセスできるようになる。
  • 既存ドメインに紐付くサブドメインを作成し、Azure App Serviceの「カスタムドメイン」に設定することができる。
  • カスタムドメインに紐付ける無料の証明書に「マネージド証明書」がある。