Azure App Serviceのカスタムドメイン追加からマネージド証明書使ったHTTPS化

2020-08-29App Service,Azure,DNS

Azure App Serviceのカスタムドメイン追加、マネージド証明書発行、HTTPS化までの手順です。
Azure App Serviceのリソース作成、カスタムドメインの追加、マネージド証明書の発行、カスタムドメインのHTTPS化までの手順を確認しています。

※Azure DNSを利用して、手順を確認しています。

スポンサーリンク

App Serviceの概要とリソース作成手順

Azure App Serviceとは

Azure App Serviceは、WebアプリケーションなどをホストするためのHTTPベースのサービスです。
OSやパッチなどがマネージドサービスとして提供されます。

App Service の概要

複数の開発言語がサポートされており、OSはWindowsベースとLinuxベースが提供されています。
コンテナーをホストすることもできます。

独自ドメインが利用できる

Azure App Serviceは独自ドメインを利用することもできます。

既存のカスタム DNS 名を Azure App Service にマップする

今回は、App Serviceで独自ドメインを利用するための設定手順を確認しています。

設定値

今回利用したApp Serviceの設定値です。
カスタムドメインの設定確認のために必要な最低限の設定のみとしています。

タブ名 項目名 設定値
基本 App Service名 app-example
公開 コード
ランタイムスタック .NET 8(TLS)
※何を選択してもカスタムドメインの設定は同じです
オペレーティングシステム Linux
価格プラン Free F1(新規作成)
※デプロイ後にBasic B1に変更
データベース データベースの作成 チェックを入れない
デプロイ 継続的デプロイ 無効化
ネットワーク パブリックアクセスを有効にする オン
ネットワークインジェクションを有効にする オフ
監視 Application Insightsを有効にする いいえ

※App Service プランも一緒に新規作成しています。
※ネットワークは環境に合わせて必要最低限のアクセスとなるように設定して下さい。
※価格プランによって設定出来る内容が異なります。

App Serviceのリソース作成

App Serviceのリソースを作成します。

App Serviceのリソース作成

App Serviceの画面で作成を選択します。
Web アプリを選択します。

Webアプリの作成画面です。
インスタンスの詳細や価格プランを設定します。

※今回はカスタムドメイン設定が使えないことを確認するため、あえてFreeプランを選択しています。

データベース、デプロイ、ネットワーク、監視設定します。
今回は最低限の設定としています。
確認画面です。
設定内容を確認したのちに、作成を選択します。

既定のドメインへアクセス確認

Azure App Serviceでは既定のドメインが払い出されます。
既定のドメインにアクセスして確認します。

既定のドメインへアクセス確認
Azure Portalで既定のドメインを確認します。
ブラウザでアクセスすると、HTTPSで接続できることが確認できます。

—広告—

App Serviceへのカスタムドメイン追加手順

App Service プランをアップグレード

Freeプランではカスタムドメインは利用できません。

前提条件(既存のカスタム DNS 名を Azure App Service にマップする)

App Serviceプランをスケールアップ(アップグレードします。

スケールアップ(アップグレード)
カスタムドメインで今すぐアップグレードかスケールアップアップ(App Serviceのプラン)を選択します。
App Serviceプランのリストが表示されます。
Basic B1以上(Custom domainにチェックが入っている)のプランを選択します。

カスタムドメイン検証用レコード発行

カスタムドメインの追加はDNSによる検証で行われます。

    • カスタムドメインの検証用レコード発行
    • DNSへのレコード(CNAMEとTXT)追加
    • ドメイン検証、追加

カスタム ドメインを構成する

※Aレコードでの検証もできます。マネージド証明書の発行にはAレコードが必要であるという注意書きがあります。

カスタムドメインを追加
左側のメニューでカスタムドメインを選択します。
カスタムドメインの追加を選択します。
ドメイン名を入力するとドメインの検証が表示されます。
表示された内容をコピーします。

Azure DNSへレコード追加

ドメイン検証用のレコードを追加します。
DNSにはAzure DNSを利用しています。

レコード追加
先ほどコピーしたCNAMEとTXTレコードの2つを追加します。

カスタムドメインの検証、追加

ドメイン検証してカスタムドメインを追加します。

ドメイン検証、追加
DNSへレコード追加後に検証します。
状態がグリーンになっていればOKです。
最後にカスタムドメインを追加して作業完了です。
追加したドメインが表示されます。

※検証後TXTレコードは削除します。

カスタムドメインへのアクセス確認

追加したカスタムドメインにブラウザからアクセスして確認します。

カスタムドメインへアクセス
アクセスするとプライバシーエラーの画面が表示されます。
HTTPでは接続できますが、HTTPSでは接続できない状態となっています。

—広告—

App Serviceのマネージド証明書を使ってカスタムドメインをHTTPS化

App Serviceでマネージド証明書を追加

マネージド証明書を追加します。
App Serviceのマネージド証明書は無料で利用することができます。

無料のマネージド証明書を作成する

※注意点として、WebアプリのIPアドレスを指すAレコードが必要である旨の記載があります。

マネージド証明書を追加

カスタムドメインのIPアドレスをAレコードに追加します。

左側のメニューで証明書を選択します。
マネージド証明書のタブで証明書の追加を選択します。
証明書発行するカスタムドメインを選択します。
管理用の証明書の名前を設定します。
検証、追加します。
発行が完了するとマネージド証明書のタブに表示されます。

※Azure DNSで設定する際、CNAMEレコードが残ったままだとAレコードを追加できません。

TLS/SSL バインディングの追加

マネージド証明書は、発行しただけでは利用されません。
カスタムドメインに証明書をバインディングする必要があります。

バインディングを追加する

バインディングの追加
左側のメニューでカスタムドメインを選択します。
対象のカスタムドメインでバインディングの追加を選択します。
証明書を選択し追加します。
状態がセキュリティ保護に変わります。

アクセス確認

追加したカスタムドメインにアクセスして確認します。

アクセス確認
HTTPSで接続してもエラーにならず、発行したマネージド証明書が確認できます。

マネージド証明書以外の利用について

マネージド証明書以外の証明書も利用できます。
Let’s Encryptの証明書の発行から利用までの手順については、こちらで紹介しています。

最後に

Azure App Serviceでのカスタムドメイン設定手順について確認してみました。
カスタムドメインの設定からマネージド証明書の発行、バインディングの追加までの一連の手順を確認しています。
無料で使えてとても便利かと思いました。

引き続き、いろいろ試してみたいと思います。

キーコンテナー(Azure Key Vault)でのSSL証明書管理については、こちらで紹介しています。

スポンサーリンク