准备条件
区域名称:east
外部FQDN:azurestack.contoso.com
证书密钥:Its1example
一台Windows Server 2016 或更高版本(由于需要下载PosweShell,最好在国外)
申请证书签名请求文件REQ
Azure官网Docs
https://docs.azure.cn/zh-cn/azure-stack/operator/azure-stack-get-pki-certs
管理员权限运行PowerShell
Install-ModuleMicrosoft.AzureStack.ReadinessChecker
$subject="C=US,ST=Washington,L=Redmond,O=Microsoft,OU=Azure Stack Hub"
#C盘目录下要创建AzureStackCSR文件夹$outputDirectory="$ENV:USERPROFILE\Documents\AzureStackCSR"
$IdentitySystem = "AAD"
$regionName = 'east'
$externalFQDN = 'azurestack.contoso.com'
以下二选其一
生成具有多个使用者可选名称的多个证书请求(生产环境)
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
生成具有多个使用者可选名称的单个证书请求(测试环境)
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -RequestType SingleCSR -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
PaaS部署所需证书,由于所有证书需要在同一台服务器上操作,一次性把所有证书创建完成比较好。
# App Services
New-AzsHubAppServicesCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
# DBAdapter
New-AzsHubDbAdapterCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
# EventHubs
New-AzsHubEventHubsCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
# IoTHub
New-AzsHubIoTHubCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
结果:
通过REQ文件生成cer文件
在本Windows Server 2016添加Active Directory证书服务:
配置为独立CA即可,若企业有域控,则CA服务器加域后,可配置为企业CA。其余默认配置。
证书申请:
在证书服务器中,浏览器打开 http://localhost/certsrv/
将REQ文件的所有内容复制在申请文本框中,点击“提交”。
颁发证书:
管理工具中打开证书颁发机构
放置在C:\Users\Administrator\Documents\AzureStackCSR至此,第一个adminmanagement的req请求已经制作为cer证书,重复制作其他共18个req请求即可。
将CER制作成PFX证书
$Path = "$env:USERPROFILE\Documents\AzureStack"
$pfxPassword = Read-Host -AsSecureString -Prompt "PFX Password"
$ExportPath = "$env:USERPROFILE\Documents\AzureStack"
ConvertTo-AzsPFX -Path $Path -pfxPassword $pfxPassword -ExportPath $ExportPath
在C:\Users\Administrator\Documents\AzureStack中即可看到region.fqdn的文件夹,至此所有部署AzureStack需要的证书制作完成。
验证证书
运行PowerShell
Install-Module Microsoft.AzureStack.ReadinessChecker
$pfxPassword = Read-Host -Prompt "Enter PFX Password" -AsSecureString
$CertificatesPath = "$env:USERPROFILE\Documents\AzureStack\east.azurestack.contoso.com"
# Deployment
Invoke-AzsHubDeploymentCertificateValidation -CertificatePath $CertificatesPath\Deployment -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com -IdentitySystem AAD
# App Services
Invoke-AzsHubAppServicesCertificateValidation -CertificatePath $CertificatesPath\AppServices -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com
# DBAdapter
Invoke-AzsHubDBAdapterCertificateValidation -CertificatePath $CertificatesPath\DBAdapter -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com
# EventHubs
Invoke-AzsHubEventHubsCertificateValidation -CertificatePath $CertificatesPath\EventHubs -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com
# IoTHub
Invoke-AzsHubIoTHubCertificateValidation -CertificatePath $CertificatesPath\IoTHub -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com
所有OK即可。
网友评论