Azure Stack Hub 준비 검사 도구를 사용하여 Azure Stack Hub 배포 또는 기존 배포에 대한 인증서 갱신에 적합한 CSR(인증서 서명 요청)을 만들 수 있습니다. 인증서를 배포하기 전에 테스트하기에 충분한 리드 타임으로 인증서를 요청, 생성 및 유효성 검사하는 것이 중요합니다.
이 도구는 이 문서의 맨 위에 있는 CSR 인증서 선택 시나리오 선택기를 기반으로 다음 인증서를 요청하는 데 사용됩니다.
- 새 배포에 대한 표준 인증서: 이 문서의 맨 위에 있는 CSR 인증서 시나리오 선택기를 사용하여 새 배포를 선택합니다.
- 기존 배포에 대한 갱신 인증서: 이 문서의 맨 위에 있는 CSR 인증서 시나리오 선택기를 사용하여 갱신을 선택합니다.
- PaaS(Platform-as-a-Service) 인증서: 필요에 따라 표준 인증서와 갱신 인증서를 모두 사용하여 생성할 수 있습니다. 자세한 내용은 Azure Stack Hub PKI(공개 키 인프라) 인증서 요구 사항(선택적 PaaS 인증서 )을 참조하세요.
필수 조건
Azure Stack Hub 배포에 대한 PKI 인증서에 대한 CSR을 생성하기 전에 시스템에서 다음 필수 조건을 충족해야 합니다.
Windows 10 이상 또는 Windows Server 2016 이상이 있는 컴퓨터에 있어야 합니다.
다음 명령을 사용하여 PowerShell 프롬프트(5.1 이상)에서 Azure Stack Hub 준비 검사기 도구를 설치합니다.
Install-Module Microsoft.AzureStack.ReadinessChecker -Force -AllowPrerelease인증서에는 다음 특성이 필요합니다.
- 지역 이름
- 외부 FQDN(정규화된 도메인 이름)
- 주제
새 배포 인증서에 대한 CSR 생성
비고
인증서 서명 요청을 생성하려면 권한 상승이 필요합니다. 제한된 환경에서 권한 상승이 불가능할 경우, 이 도구를 사용하여 모든 필요한 Azure Stack Hub 외부 인증서 정보를 포함하는 명확한 텍스트 형식의 템플릿 파일을 생성할 수 있습니다. 그런 다음 관리자 권한 세션에서 이러한 템플릿 파일을 사용하여 퍼블릭/프라이빗 키 쌍 생성을 완료합니다.
새 Azure Stack Hub PKI 인증서에 대한 CSR을 준비하려면 다음 단계를 완료합니다.
준비 검사 도구를 설치한 컴퓨터에서 PowerShell 세션을 엽니다.
다음 변수를 선언합니다.
비고
<regionName>.<externalFQDN>는 Azure Stack Hub의 모든 외부 DNS 이름이 만들어지는 기준이 됩니다. 다음 예제에서는 포털portal.east.azurestack.contoso.com이 됩니다.$outputDirectory = "$ENV:USERPROFILE\Documents\AzureStackCSR" # An existing output directory $IdentitySystem = "AAD" # Use "AAD" for Azure Active Director, "ADFS" for Active Directory Federation Services $regionName = 'east' # The region name for your Azure Stack Hub deployment $externalFQDN = 'azurestack.contoso.com' # The external FQDN for your Azure Stack Hub deployment
이제 동일한 PowerShell 세션을 사용하여 CSR을 생성합니다. 지침은 다음과 같이 선택한 주체 형식에 따라 다릅니다.
비고
Azure Stack Hub 서비스의 첫 번째 DNS 이름은 인증서 요청의 CN 필드로 구성됩니다.
제목을 선언합니다. 예를 들어:
$subject = "C=US,ST=Washington,L=Redmond,O=Microsoft,OU=Azure Stack Hub"
다음 중 하나를 완료하여 CSR을 생성합니다.
프로덕션 배포 환경의 경우 첫 번째 스크립트는 배포 인증서에 대한 CSR을 생성합니다.
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem원하는 경우, 두 번째 스크립트는 배포 인증서의 CSR과 동시에 Azure Container Registry용 CSR을 생성합니다.
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -IncludeContainerRegistry세 번째 스크립트는 설치한 선택적 PaaS 서비스에 대한 CSR을 생성합니다.
# App Services New-AzsHubAppServicesCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory # DBAdapter (SQL/MySQL) New-AzsHubDbAdapterCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory # EventHubs New-AzsHubEventHubsCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory # Azure Container Registry New-AzsHubAzureContainerRegistryCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory낮은 권한 환경에서 필요한 속성이 선언된 평문 인증서 템플릿 파일을 생성하려면,
-LowPrivilege매개 변수를 추가하십시오.New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -LowPrivilege개발 및 테스트 환경의 경우 다중 주체 대체 이름을 가진 단일 CSR을 생성하려면 매개 변수와 값을 추가
-RequestType SingleCSR합니다.중요합니다
이 방법은 프로덕션 환경에는 권장되지 않습니다.
New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -RequestType SingleCSR -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
마지막 단계를 완료합니다.
출력을 검토합니다.
Starting Certificate Request Process for Deployment CSR generating for following SAN(s): *.adminhosting.east.azurestack.contoso.com,*.adminvault.east.azurestack.contoso.com,*.blob.east.azurestack.contoso.com,*.hosting.east.azurestack.contoso.com,*.queue.east.azurestack.contoso.com,*.table.east.azurestack.contoso.com,*.vault.east.azurestack.contoso.com,adminmanagement.east.azurestack.contoso.com,adminportal.east.azurestack.contoso.com,management.east.azurestack.contoso.com,portal.east.azurestack.contoso.com Present this CSR to your Certificate Authority for Certificate Generation: C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710165538.req Certreq.exe output: CertReq: Request Created매개 변수를
-LowPrivilege사용한 경우 하위 디렉터리에 .inf 파일이 생성되었습니다C:\Users\username\Documents\AzureStackCSR. 다음은 그 예입니다.C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710165538_ClearTextTemplate.inf권한 상승이 허용되는 시스템에 파일을 복사한 다음, 다음 구문을
certreq사용하여 각 요청에certreq -new <example.inf> <example.req>서명합니다. 그런 다음, 관리자 권한 시스템에서 생성된 프라이빗 키와 CA에서 서명한 새 인증서를 일치해야 하므로 관리자 권한 시스템에서 나머지 프로세스를 완료합니다.
- 시스템의 지역 및 FQDN(외부 도메인 이름)은 준비 검사기에서 기존 인증서에서 특성을 추출하기 위한 엔드포인트를 결정하는 데 사용됩니다. 다음 중 하나가 시나리오에 적용되는 경우 이 문서의 맨 위에 있는 CSR 인증서 시나리오 선택기를 사용하고 이 문서의 새 배포 버전을 선택해야 합니다.
- 엔드포인트에서 주체, 키 길이 및 서명 알고리즘과 같은 인증서의 특성을 변경합니다.
- 일반 이름 특성만 포함하는 인증서 주체를 사용합니다.
- 시작하기 전에 Azure Stack Hub 시스템에 대한 HTTPS 연결이 있는지 확인합니다.
갱신 인증서에 대한 CSR 생성
이 섹션에서는 기존 Azure Stack Hub PKI 인증서의 갱신을 위한 CSR 준비에 대해 설명합니다.
CSR 생성
준비 검사 도구를 설치한 컴퓨터에서 PowerShell 세션을 엽니다.
다음 변수를 선언합니다.
비고
준비 검사기는 문자열이 앞에 추가된
stampEndpoint를 사용하여 기존 인증서를 찾습니다. 예를 들어 배포 인증서,portal.east.azurestack.contoso.comsso.appservices.east.azurestack.contoso.comApp Services 인증서 등에 사용됩니다.$regionName = 'east' # The region name for your Azure Stack Hub deployment $externalFQDN = 'azurestack.contoso.com' # The external FQDN for your Azure Stack Hub deployment $stampEndpoint = "$regionName.$externalFQDN" $outputDirectory = "$ENV:USERPROFILE\Documents\AzureStackCSR" # Declare the path to an existing output directory다음 중 하나 이상을 완료하여 CSR을 생성합니다.
프로덕션 환경의 경우 첫 번째 스크립트는 배포 인증서에 대한 CSR을 생성합니다.
New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory원하는 경우 두 번째 스크립트는 Azure Container Registry용 CSR과 배포 인증서용 CSR을 동시에 생성합니다.
New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -IncludeContainerRegistry세 번째 스크립트는 설치한 선택적 PaaS 서비스에 대한 CSR을 생성합니다.
# App Services New-AzsHubAppServicesCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory # DBAdapter New-AzsHubDBAdapterCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory # EventHubs New-AzsHubEventHubsCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory # Azure Container Registry New-AzsHubAzureContainerRegistryCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory개발 및 테스트 환경의 경우 다중 주체 대체 이름을 가진 단일 CSR을 생성하려면 매개 변수와 값을 추가
-RequestType SingleCSR합니다.중요합니다
이 방법은 프로덕션 환경에는 권장되지 않습니다.
New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -RequestType SingleCSR출력을 검토합니다.
Querying StampEndpoint portal.east.azurestack.contoso.com for existing certificate Starting Certificate Request Process for Deployment CSR generating for following SAN(s): *.adminhosting.east.azurestack.contoso.com,*.adminvault.east.azurestack.contoso.com,*.blob.east.azurestack.contoso.com,*.hosting.east.azurestack.contoso.com,*.queue.east.azurestack.contoso.com,*.table.east.azurestack.contoso.com,*.vault.east.azurestack.contoso.com,adminmanagement.east.azurestack.contoso.com,adminportal.east.azurestack.contoso.com,management.east.azurestack.contoso.com,portal.east.azurestack.contoso.com Present this CSR to your certificate authority for certificate generation: C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710122723.req Certreq.exe output: CertReq: Request Created
준비가 되면 생성된 .req 파일을 CA(내부 또는 공용)에 제출합니다. 변수에 의해 $outputDirectory 지정된 디렉터리에는 CA에 제출해야 하는 CSR이 포함됩니다. 또한 디렉터리에는 인증서 요청 생성 중에 사용할 .inf 파일이 포함된 자식 디렉터리가 참조용으로 포함되어 있습니다. CA가 Azure Stack Hub PKI 요구 사항을 충족하는 생성된 요청을 사용하여 인증서를 생성하는지 확인합니다.
다음 단계
인증 기관에서 인증서를 다시 받으면 동일한 시스템에서 Azure Stack Hub PKI 인증서 준비 의 단계를 수행합니다.