注
この記事では、外部のインフラストラクチャとサービスのエンドポイントをセキュリティで保護するために使用される外部証明書の準備についてのみ説明します。 内部証明書は、 証明書ローテーション プロセス中に個別に管理されます。
注
Azure Container Registry (ACR) をインストールする場合は、外部 ACR 証明書の有効期限を、他の外部 Azure Stack Hub 証明書の有効期限日に合わせることをお勧めします。 さらに、他の外部証明書 PFX の保護に使用するのと同じパスワードで、ACR 用の PFX を保護することをお勧めします。
証明機関 (CA) から取得した証明書ファイルは、Azure Stack Hub の証明書要件に一致するプロパティを使用してインポートおよびエクスポートする必要があります。
この記事では、外部証明書をインポート、パッケージ化、検証して、Azure Stack Hub のデプロイまたはシークレットのローテーションに備える方法について説明します。
[前提条件]
Azure Stack Hub デプロイ用の PKI 証明書をパッケージ化する前に、システムが次の前提条件を満たしている必要があります。
- 証明機関から返された証明書は、.cer形式 (.cert、.sst、.pfx など、構成可能なその他の形式) で 1 つのディレクトリに格納されます。
- Windows 10 または Windows Server 2016 以降。
- 証明書署名要求を生成したのと同じシステムを使用します (PFX に事前にパッケージ化された証明書を対象としている場合を除く)。
- 管理者特権の PowerShell セッションを使用します。
適切な証明書の 準備 (Azure Stack 準備チェッカー) または証明書の 準備 (手動の手順) セクションに進みます。
証明書の準備 (Azure Stack 適合性チェッカー)
Azure Stack 適合性チェッカー PowerShell コマンドレットを使用して証明書をパッケージ化するには、次の手順を使用します。
次のコマンドレットを実行して、PowerShell プロンプト (5.1 以上) から Azure Stack 適合性チェッカー モジュールをインストールします。
Install-Module Microsoft.AzureStack.ReadinessChecker -Force -AllowPrerelease証明書ファイルへの パス を指定します。 例えば次が挙げられます。
$Path = "$env:USERPROFILE\Documents\AzureStack"pfxPassword を宣言します。 例えば次が挙げられます。
$pfxPassword = Read-Host -AsSecureString -Prompt "PFX Password"結果の PFX のエクスポート先となる ExportPath を宣言します。 例えば次が挙げられます。
$ExportPath = "$env:USERPROFILE\Documents\AzureStack"証明書を Azure Stack Hub 証明書に変換します。 例えば次が挙げられます。
ConvertTo-AzsPFX -Path $Path -pfxPassword $pfxPassword -ExportPath $ExportPath出力を確認します。
ConvertTo-AzsPFX v1.2005.1286.272 started.Stage 1: Scanning Certificates Path: C:\Users\[*redacted*]\Documents\AzureStack Filter: CER Certificate count: 11 adminmanagement_east_azurestack_contoso_com_CertRequest_20200710235648.cer adminportal_east_azurestack_contoso_com_CertRequest_20200710235645.cer management_east_azurestack_contoso_com_CertRequest_20200710235644.cer portal_east_azurestack_contoso_com_CertRequest_20200710235646.cer wildcard_adminhosting_east_azurestack_contoso_com_CertRequest_20200710235649.cer wildcard_adminvault_east_azurestack_contoso_com_CertRequest_20200710235642.cer wildcard_blob_east_azurestack_contoso_com_CertRequest_20200710235653.cer wildcard_hosting_east_azurestack_contoso_com_CertRequest_20200710235652.cer wildcard_queue_east_azurestack_contoso_com_CertRequest_20200710235654.cer wildcard_table_east_azurestack_contoso_com_CertRequest_20200710235650.cer wildcard_vault_east_azurestack_contoso_com_CertRequest_20200710235647.cer Detected ExternalFQDN: east.azurestack.contoso.com Stage 2: Exporting Certificates east.azurestack.contoso.com\Deployment\ARM Admin\ARMAdmin.pfx east.azurestack.contoso.com\Deployment\Admin Portal\AdminPortal.pfx east.azurestack.contoso.com\Deployment\ARM Public\ARMPublic.pfx east.azurestack.contoso.com\Deployment\Public Portal\PublicPortal.pfx east.azurestack.contoso.com\Deployment\Admin Extension Host\AdminExtensionHost.pfx east.azurestack.contoso.com\Deployment\KeyVaultInternal\KeyVaultInternal.pfx east.azurestack.contoso.com\Deployment\ACSBlob\ACSBlob.pfx east.azurestack.contoso.com\Deployment\Public Extension Host\PublicExtensionHost.pfx east.azurestack.contoso.com\Deployment\ACSQueue\ACSQueue.pfx east.azurestack.contoso.com\Deployment\ACSTable\ACSTable.pfx east.azurestack.contoso.com\Deployment\KeyVault\KeyVault.pfx Stage 3: Validating Certificates. Validating east.azurestack.contoso.com-Deployment-AAD certificates in C:\Users\[*redacted*]\Documents\AzureStack\east.azurestack.contoso.com\Deployment Testing: KeyVaultInternal\KeyVaultInternal.pfx Thumbprint: E86699****************************4617D6 PFX Encryption: OK Expiry Date: OK Signature Algorithm: OK DNS Names: OK Key Usage: OK Key Length: OK Parse PFX: OK Private Key: OK Cert Chain: OK Chain Order: OK Other Certificates: OK Testing: ARM Public\ARMPublic.pfx ... Log location (contains PII): C:\Users\[*redacted*]\AppData\Local\Temp\AzsReadinessChecker\AzsReadinessChecker.log ConvertTo-AzsPFX Completed注
Get-help ConvertTo-AzsPFX -Fullを使用して、検証の無効化やさまざまな証明書形式のフィルター処理など、その他のオプションを確認します。検証が成功した後は、追加の手順を実行せずに、デプロイまたはローテーション用に証明書を提示できます。
証明書を準備する (手動の手順)
これらの手動の手順を使用して、新しい Azure Stack Hub PKI 証明書の証明書をパッケージ化できます。
証明書をインポートする
選択した CA から取得した元の証明書バージョンをデプロイ ホスト上のディレクトリにコピーします。
Warnung
CA によって直接提供されたファイルから、既にインポート、エクスポート、または変更されたファイルをコピーしないでください。
証明書を右クリックし、CA からの証明書の配信方法に応じて、[ 証明書のインストール ] または [PFX のインストール] を選択します。
証明書の インポート ウィザードで、インポート場所として [ローカル コンピューター ] を選択します。 [次へ] を選択します。 次の画面で、もう一度 [次へ] を選択します。
[ 次のストアにすべての証明書を配置する ] を選択し、場所として [エンタープライズ信頼 ] を選択します。 [ OK] を 選択して証明書ストアの選択ダイアログ ボックスを閉じ、[ 次へ] を選択します。
- PFX をインポートすると、追加のダイアログが表示されます。 [ 秘密キー保護 ] ページで、証明書ファイルのパスワードを入力し、[ このキーをエクスポート可能としてマーク する] オプションを有効にして、後でキーをバックアップまたは転送できるようにします。 [次へ] を選択します。
[ 完了] を 選択してインポートを完了します。
注
Azure Stack Hub の証明書をインポートすると、証明書の秘密キーが PKCS 12 ファイル (PFX) としてクラスター化ストレージに格納されます。
証明書をエクスポートする
証明書マネージャー MMC コンソールを開き、ローカル コンピューターの証明書ストアに接続します。
Microsoft 管理コンソールを開きます。 Windows 10 でコンソールを開くには、[ スタート] メニューを右クリックし、[ 実行] を選択し、「 mmc 」と入力して Enter キーを押します。
[ファイル]>[スナップインの追加と削除]、[証明書] の順に選択し、[追加] を選択します。
[ コンピューター アカウント] を選択し、[ 次へ] を選択します。 [ ローカル コンピューター ] を選択し、[ 完了] を選択します。 [ OK] を 選択して [追加と削除] Snap-In ページを閉じます。
証明書>Enterprise Trust>Certificate の場所を参照します。 右側に証明書が表示されていることを確認します。
[証明書マネージャー コンソール] タスク バーで、[アクション>すべてのタスク>Export] を選択します。 [次へ] を選択します。
注
Azure Stack Hub 証明書の数によっては、このプロセスを複数回完了することが必要になる場合があります。
[ はい]、[秘密キーのエクスポート] の順に選択し、[ 次へ] を選択します。
[ファイル形式のエクスポート] セクションで、次の操作を行います。
- 可能であれば、すべての証明書を証明書に含めるを選択します。
- [ すべての拡張プロパティのエクスポート] を選択します。
- [ 証明書のプライバシーを有効にする] を選択します。
- [次へ] を選択します。
[ パスワード ] を選択し、証明書のパスワードを入力します。 次のパスワードの複雑さの要件を満たすパスワードを作成します。
- 8 文字以上の長さ。
- 大文字、小文字、0 から 9 の数字、特殊文字、大文字または小文字ではないアルファベット文字の少なくとも 3 文字。
このパスワードを書き留めます。 後でデプロイ パラメーターとして使用します。
[次へ] を選択します。
エクスポートする PFX ファイルのファイル名と場所を選択します。 [次へ] を選択します。
完了 を選択します。