AppService証明書をAzure Application Gatewayにアップロードさせて証明書を手動更新する方法
はじめに
AppService証明書の有効期限が迫った際に新しいAppService証明書をAzure Application Gatewayにアップロードさせて証明書を手動更新する方法を紹介します!!
前提
-
使用PCはWindows。
-
AppService証明書をAzure Key Vaultに格納すること。(手順は下記URL参照。手順の詳細は当記事では割愛します。)
https://learn.microsoft.com/ja-jp/azure/app-service/configure-ssl-app-service-certificate?tabs=portal#store-certificate-in-azure-key-vault -
AppService証明書自体の更新をしておくこと。ドメイン検証が必要なので忘れずに!!(下記URL参照。手順の詳細は当記事では割愛します。)
https://zenn.dev/headwaters/articles/4d472e6c1af85d
構成
まずは構成を簡単に下の図で紹介。
手順
- Azure Portalに入る。
https://portal.azure.com/
2.Azure Portal画面上部の検索欄にて、「App Service 証明書」と入力し、[App Service 証明書]をクリックする。
-
対象のAppService証明書をクリックする。
-
左サイドバーの[概要]をクリックする。
-
有効期限が更新されていることを確認する。
-
左サイドバーの[証明書の構成]をクリックする。
-
「手順 1: 格納」、「手順 2: 確認」、「手順 3: 割り当て」の全てにチェックが入っていることを確認する。
-
左サイドバーの[証明書のエクスポート]をクリックする。
-
[Key Vault シークレットを開く]をクリックする。
-
[現在のバージョン]をクリックする。
-
[証明書としてダウンロード]をクリックする。
-
エクスプローラーを開き、ダウンロードフォルダからダウンロードした証明書をクリックする。
-
「証明書のインポート ウィザード」が開かれるので、[現在のユーザー(C)]のラジオボタンをクリックし(デフォルトでこちらにラジオボタンが選択されていますが)、[次へ(N)]をクリックする。
-
[参照(R)...]をクリックし、エクスポートした証明書を選択する。
-
[次へ(N)]をクリックする。
-
「このキーをエクスポート可能にする(M)」のチェックボックスを入れ、[次へ(N)]をクリックする。
-
「証明書の種類に基づいて、自動的に証明書ストアを選択する(U)」をのラジオボタンをクリックし、[次へ(N)]をクリックする。
-
内容を確認し、[完了(F)]をクリックする。
-
「正しくインポートされました。」が表示されることを確認し、[OK]をクリックする。
-
Windowsの[スタート]をクリックする。
-
スタートメニューより「cert」と入力し、[ユーザー証明書の管理]をクリックする。
-
「個人>証明書」を開き、インポートした証明書を右クリックする。
-
[すべてのタスク(K)]>[エクスポート]をクリックする。
-
[次へ(N)]をクリックする。
-
「はい、秘密キーをエクスポートします(Y)」のラジオボタンをクリックし、[次へ(N)]をクリックする。
-
「Personal Information Exchange - PKCS#12(.PFX)(P)」のラジオボタンをクリックし、[次へ(N)]をクリックする。
-
パスワードを入力し、「次へ(N)」をクリックする。
※パスワードは下記URLのパスワード生成を使用し、パスワードを設定する。パスワードはメモ帳等に控えておく。
https://www.luft.co.jp/cgi/randam.php
-
[参照®]をクリックする。
-
エクスポート先を選択し、「ファイル名(N)」に証明書名を入力し、[保存(S)]をクリックする。
※証明書は「cert」などわかるようにすれば、大丈夫です。
-
[次へ(N)]をクリックする。
-
内容を確認し、[完了(F)]を押下する。
-
「正しくエクスポートされました。」が表示されたら、[OK]をクリックする。
-
Azure Portalに戻り、画面上部の検索欄にて、「アプリケーション ゲートウェイ」と入力し、[アプリケーション ゲートウェイ]をクリックする。
-
対象のアプリケーションゲートウェイのリソースをクリックする。
-
左サイドバーの[リスナー]をクリックする。
-
対象のリスナーをクリックする。
-
「証明書の選択」の「新規作成」のラジオボタンを押下し、「HTTPS設定」の下記の内容を入力後、[保存]をクリックする。
- 証明書の選択:「証明書のアップロード」を選択
- 証明書名:任意の証明書名
- PFX 証明書ファイル:エクスポートした証明書を選択
- パスワード:エクスポートした際のパスワードを入力
-
左サイドバーの[アクティビティログ]をクリックする。
-
「Create or Update Application Gateway」が「成功」と表示されていることを確認する。
-
対象のURLにアクセス後、ブラウザの「鍵マーク」をクリックし、「この接続は保護されています」をクリックする。
-
[証明書は有効です]をクリックする。
-
有効期限が更新されていることを確認する。
-
コマンドプロンプトを開き、下記のコマンドを実行し、Azureにログインする。
az login --tenant "テナントID"
- 下記コマンドを実行し、変更前の証明書があることを確認する。
az network application-gateway ssl-cert list --gateway-name "アプリケーションゲートウェイ名" -g "リソースグループ名"
- 下記コマンドを実行し、変更前の証明書を削除する。
az network application-gateway ssl-cert delete -g "アプリケーションゲートウェイ名" --gateway-name "リソースグループ名" -n <変更前の証明書の名前>
- 下記コマンドを実行し、証明書が削除されていることを確認する。
az network application-gateway ssl-cert list --gateway-name "アプリケーションゲートウェイ名" -g "リソースグループ名"
Discussion