Azure Stack Hub에서 확장 호스트 준비
확장 호스트는 필요한 TCP/IP 포트 수를 줄여 Azure Stack Hub를 보호합니다. 이 문서에서는 1808 업데이트 후 Azure Stack Hub 업데이트 패키지를 통해 자동으로 사용하도록 설정되는 확장 호스트에 대한 Azure Stack Hub 준비를 살펴봅니다. 이 문서는 Azure Stack Hub 업데이트 1808, 1809 및 1811에 적용됩니다.
인증서 요구 사항
확장 호스트는 각 포털 확장에 대한 고유한 호스트 항목을 보장하기 위해 두 개의 새 도메인 네임스페이스를 구현합니다. 새 도메인 네임스페이스에는 보안 통신을 보장하기 위해 두 개의 추가 와일드카드 인증서가 필요합니다.
표에는 새 네임스페이스 및 연결된 인증서가 표시됩니다.
배포 폴더 | 필요한 인증서 주체 및 SAN(주체 대체 이름) | 범위(지역별) | 하위 도메인 네임스페이스 |
---|---|---|---|
관리 확장 호스트 | *.adminhosting.<지역.><fqdn>(와일드카드 SSL 인증서) | 관리 확장 호스트 | adminhosting.<region>.<fqdn> |
공용 확장 호스트 | *.호스팅.<지역.><fqdn>(와일드카드 SSL 인증서) | 공용 확장 호스트 | 호스팅.<지역.><Fqdn> |
자세한 인증서 요구 사항은 Azure Stack Hub 공개 키 인프라 인증서 요구 사항을 참조하세요.
인증서 서명 요청 만들기
Azure Stack Hub 준비 검사기 도구를 사용하면 두 개의 새 SSL 인증서와 필요한 SSL 인증서에 대한 인증서 서명 요청을 만들 수 있습니다. Azure Stack Hub 인증서 서명 요청 생성 문서의 단계를 따릅니다.
참고
SSL 인증서를 요청한 방법에 따라 이 단계를 건너뛸 수 있습니다.
새 인증서 유효성 검사
하드웨어 수명 주기 호스트 또는 Azure Stack Hub 관리 워크스테이션에 대한 상승된 권한으로 PowerShell을 엽니다.
다음 cmdlet을 실행하여 Azure Stack Hub 준비 검사기 도구를 설치합니다.
Install-Module -Name Microsoft.AzureStack.ReadinessChecker
다음 스크립트를 실행하여 필요한 폴더 구조를 만듭니다.
New-Item C:\Certificates -ItemType Directory $directories = 'ACSBlob','ACSQueue','ACSTable','Admin Portal','ARM Admin','ARM Public','KeyVault','KeyVaultInternal','Public Portal', 'Admin extension host', 'Public extension host' $destination = 'c:\certificates' $directories | % { New-Item -Path (Join-Path $destination $PSITEM) -ItemType Directory -Force}
참고
Microsoft Entra ID 페더레이션 서비스(AD FS)를 사용하여 배포하는 경우 스크립트
ADFS
의 $directories 다음 디렉터리를 추가해야 합니다. ,Graph
.현재 Azure Stack Hub에서 사용 중인 기존 인증서를 적절한 디렉터리에 배치합니다. 예를 들어 관리 ARM 인증서를 폴더에 넣습니다
Arm Admin
. 그런 다음 새로 만든 호스팅 인증서를Admin extension host
및Public extension host
디렉터리에 배치합니다.다음 cmdlet을 실행하여 인증서 검사 시작합니다.
$pfxPassword = Read-Host -Prompt "Enter PFX Password" -AsSecureString Start-AzsReadinessChecker -CertificatePath c:\certificates -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com -IdentitySystem AAD
출력을 확인하고 모든 인증서가 모든 테스트를 통과하는지 확인합니다.
확장 호스트 인증서 가져오기
다음 단계를 위해 Azure Stack Hub 권한 있는 엔드포인트에 연결할 수 있는 컴퓨터를 사용합니다. 해당 컴퓨터에서 새 인증서 파일에 액세스할 수 있는지 확인합니다.
다음 단계를 위해 Azure Stack Hub 권한 있는 엔드포인트에 연결할 수 있는 컴퓨터를 사용합니다. 해당 컴퓨터에서 새 인증서 파일에 액세스해야 합니다.
PowerShell ISE를 열어 다음 스크립트 블록을 실행합니다.
관리자 호스팅 엔드포인트에 대한 인증서를 가져옵니다.
$CertPassword = read-host -AsSecureString -prompt "Certificate Password" $CloudAdminCred = Get-Credential -UserName <Privileged endpoint credentials> -Message "Enter the cloud domain credentials to access the privileged endpoint." [Byte[]]$AdminHostingCertContent = [Byte[]](Get-Content c:\certificate\myadminhostingcertificate.pfx -Encoding Byte) Invoke-Command -ComputerName <PrivilegedEndpoint computer name> ` -Credential $CloudAdminCred ` -ConfigurationName "PrivilegedEndpoint" ` -ArgumentList @($AdminHostingCertContent, $CertPassword) ` -ScriptBlock { param($AdminHostingCertContent, $CertPassword) Import-AdminHostingServiceCert $AdminHostingCertContent $certPassword }
호스팅 엔드포인트에 대한 인증서를 가져옵니다.
$CertPassword = read-host -AsSecureString -prompt "Certificate Password" $CloudAdminCred = Get-Credential -UserName <Privileged endpoint credentials> -Message "Enter the cloud domain credentials to access the privileged endpoint." [Byte[]]$HostingCertContent = [Byte[]](Get-Content c:\certificate\myhostingcertificate.pfx -Encoding Byte) Invoke-Command -ComputerName <PrivilegedEndpoint computer name> ` -Credential $CloudAdminCred ` -ConfigurationName "PrivilegedEndpoint" ` -ArgumentList @($HostingCertContent, $CertPassword) ` -ScriptBlock { param($HostingCertContent, $CertPassword) Import-UserHostingServiceCert $HostingCertContent $certPassword }
DNS 구성 업데이트
참고
DNS 통합에 DNS 영역 위임을 사용한 경우에는 이 단계가 필요하지 않습니다. 개별 호스트 A 레코드가 Azure Stack Hub 엔드포인트를 게시하도록 구성된 경우 두 개의 추가 호스트 A 레코드를 만들어야 합니다.
IP | 호스트 이름 | 형식 |
---|---|---|
<IP> | *. Adminhosting.<지역>.<Fqdn> | A |
<IP> | *. 호스팅.<지역>.<Fqdn> | A |
Get-AzureStackStampInformation cmdlet을 실행하여 권한 있는 엔드포인트를 사용하여 할당된 IP를 검색할 수 있습니다.
포트 및 프로토콜
Azure Stack Hub 데이터 센터 통합 - 엔드포인트 게시 문서에서는 확장 호스트 출시 전에 Azure Stack Hub를 게시하기 위해 인바운드 통신이 필요한 포트 및 프로토콜을 다룹니다.
새 엔드포인트 게시
방화벽을 통해 게시해야 하는 두 개의 새 엔드포인트가 있습니다. 공용 VIP 풀에서 할당된 IP는 Azure Stack Hub 환경의 권한 있는 엔드포인트에서 실행해야 하는 다음 코드를 사용하여 검색할 수 있습니다.
# Create a PEP Session
winrm s winrm/config/client '@{TrustedHosts= "<IpOfERCSMachine>"}'
$PEPCreds = Get-Credential
$PEPSession = New-PSSession -ComputerName <IpOfERCSMachine> -Credential $PEPCreds -ConfigurationName "PrivilegedEndpoint" -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
# Obtain DNS Servers and extension host information from Azure Stack Hub Stamp Information and find the IPs for the Host Extension Endpoints
$StampInformation = Invoke-Command $PEPSession {Get-AzureStackStampInformation} | Select-Object -Property ExternalDNSIPAddress01, ExternalDNSIPAddress02, @{n="TenantHosting";e={($_.TenantExternalEndpoints.TenantHosting) -replace "https://*.","testdnsentry"-replace "/"}}, @{n="AdminHosting";e={($_.AdminExternalEndpoints.AdminHosting)-replace "https://*.","testdnsentry"-replace "/"}},@{n="TenantHostingDNS";e={($_.TenantExternalEndpoints.TenantHosting) -replace "https://",""-replace "/"}}, @{n="AdminHostingDNS";e={($_.AdminExternalEndpoints.AdminHosting)-replace "https://",""-replace "/"}}
If (Resolve-DnsName -Server $StampInformation.ExternalDNSIPAddress01 -Name $StampInformation.TenantHosting -ErrorAction SilentlyContinue) {
Write-Host "Can access AZS DNS" -ForegroundColor Green
$AdminIP = (Resolve-DnsName -Server $StampInformation.ExternalDNSIPAddress02 -Name $StampInformation.AdminHosting).IPAddress
Write-Host "The IP for the Admin Extension Host is: $($StampInformation.AdminHostingDNS) - is: $($AdminIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.AdminHostingDNS), Value: $($AdminIP)" -ForegroundColor Green
$TenantIP = (Resolve-DnsName -Server $StampInformation.ExternalDNSIPAddress01 -Name $StampInformation.TenantHosting).IPAddress
Write-Host "The IP address for the Tenant Extension Host is $($StampInformation.TenantHostingDNS) - is: $($TenantIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.TenantHostingDNS), Value: $($TenantIP)" -ForegroundColor Green
}
Else {
Write-Host "Cannot access AZS DNS" -ForegroundColor Yellow
$AdminIP = (Resolve-DnsName -Name $StampInformation.AdminHosting).IPAddress
Write-Host "The IP for the Admin Extension Host is: $($StampInformation.AdminHostingDNS) - is: $($AdminIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.AdminHostingDNS), Value: $($AdminIP)" -ForegroundColor Green
$TenantIP = (Resolve-DnsName -Name $StampInformation.TenantHosting).IPAddress
Write-Host "The IP address for the Tenant Extension Host is $($StampInformation.TenantHostingDNS) - is: $($TenantIP)" -ForegroundColor Yellow
Write-Host "The Record to be added in the DNS zone: Type A, Name: $($StampInformation.TenantHostingDNS), Value: $($TenantIP)" -ForegroundColor Green
}
Remove-PSSession -Session $PEPSession
샘플 출력
Can access AZS DNS
The IP for the Admin Extension Host is: *.adminhosting.\<region>.\<fqdn> - is: xxx.xxx.xxx.xxx
The Record to be added in the DNS zone: Type A, Name: *.adminhosting.\<region>.\<fqdn>, Value: xxx.xxx.xxx.xxx
The IP address for the Tenant Extension Host is *.hosting.\<region>.\<fqdn> - is: xxx.xxx.xxx.xxx
The Record to be added in the DNS zone: Type A, Name: *.hosting.\<region>.\<fqdn>, Value: xxx.xxx.xxx.xxx
참고
확장 호스트를 사용하도록 설정하기 전에 이 변경을 수행합니다. 이렇게 하면 Azure Stack Hub 포털에 지속적으로 액세스할 수 있습니다.
엔드포인트(VIP) | 프로토콜 | 포트 |
---|---|---|
관리 호스팅 | HTTPS | 443 |
Hosting | HTTPS | 443 |
기존 게시 규칙 업데이트(확장 호스트의 사후 사용)
참고
1808 Azure Stack Hub 업데이트 패키지는 아직 확장 호스트를 사용하도록 설정 하지 않습니다. 필요한 인증서를 가져와 확장 호스트를 준비할 수 있습니다. 1808 업데이트 후 Azure Stack Hub 업데이트 패키지를 통해 확장 호스트를 자동으로 사용하도록 설정하기 전에 포트를 닫지 마세요.
기존 방화벽 규칙에서 다음과 같은 기존 엔드포인트 포트를 닫아야 합니다.
참고
유효성 검사에 성공한 후 해당 포트를 닫는 것이 좋습니다.
엔드포인트(VIP) | 프로토콜 | 포트 |
---|---|---|
포털(관리자) | HTTPS | 12495 12499 12646 12647 12648 12649 12650 13001 13003 13010 13011 13012 13020 13021 13026 30015 |
포털(사용자) | HTTPS | 12495 12649 13001 13010 13011 13012 13020 13021 30015 13003 |
Azure Resource Manager(관리자) | HTTPS | 30024 |
Azure Resource Manager(사용자) | HTTPS | 30024 |
다음 단계
- 방화벽 통합에 대해 알아봅니다.
- Azure Stack Hub 인증서 서명 요청 생성에 대해 알아봅니다.