Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O host de extensão protege o Azure Stack Hub reduzindo o número de portas TCP/IP necessárias. Este artigo descreve como preparar o Azure Stack Hub para o host de extensão habilitado automaticamente por meio de um pacote de atualização do Azure Stack Hub após a atualização 1808. Este artigo aplica-se às atualizações 1808, 1809 e 1811 do Azure Stack Hub.
Requisitos de certificação
O host de extensão implementa dois novos namespaces de domínio para garantir entradas de host exclusivas para cada extensão do portal. Os novos namespaces de domínio exigem dois certificados curinga adicionais para garantir uma comunicação segura.
A tabela mostra os novos namespaces e os certificados associados:
| Pasta de implantação | Assunto do certificado e nomes alternativos de assunto (SAN) necessários | Âmbito (por região) | Namespace do subdomínio |
|---|---|---|---|
| Anfitrião de extensão de administração | *.adminhosting.<região><fqdn> (Certificados SSL Wildcard) | Anfitrião de extensão de administração | adminhosting.<região>.<FQDN> |
| Host de extensão pública | *.hospedagem.<região>.<fqdn> (Certificados SSL curinga) | Host de extensão pública | hospedagem.<região>.<FQDN> |
Para obter requisitos de certificado detalhados, consulte Requisitos de certificado de infraestrutura de chave pública do Azure Stack Hub.
Criar solicitação de assinatura de certificado
A ferramenta Azure Stack Hub Readiness Checker permite criar uma solicitação de assinatura de certificado para os dois certificados SSL novos e necessários. Siga as etapas no artigo Geração de solicitação de assinatura de certificados do Azure Stack Hub.
Observação
Você pode pular esta etapa, dependendo de como você solicitou seus certificados SSL.
Validar novos certificados
Abra o PowerShell com permissão elevada no host do ciclo de vida do hardware ou na estação de trabalho de gerenciamento do Azure Stack Hub.
Execute o seguinte cmdlet para instalar a ferramenta Azure Stack Hub Readiness Checker:
Install-Module -Name Microsoft.AzureStack.ReadinessCheckerExecute o seguinte script para criar a estrutura de pastas necessária:
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}Observação
Se você implantar com o Microsoft Entra ID Federated Services (AD FS), os seguintes diretórios deverão ser adicionados a $directories no script:
ADFS,Graph.Coloque os certificados existentes, que você está usando atualmente no Azure Stack Hub, nos diretórios apropriados. Por exemplo, coloque o certificado Admin ARM na
Arm Adminpasta. E, em seguida, coloque os certificados de hospedagem recém-criados nosAdmin extension hostdiretórios ePublic extension host.Execute o seguinte cmdlet para iniciar a verificação de certificado:
$pfxPassword = Read-Host -Prompt "Enter PFX Password" -AsSecureString Start-AzsReadinessChecker -CertificatePath c:\certificates -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com -IdentitySystem AADVerifique a saída para ver se todos os certificados passam em todos os testes.
Importar certificados de host de extensão
Use um computador que possa se conectar ao ponto de extremidade privilegiado do Azure Stack Hub para as próximas etapas. Certifique-se de que tem acesso aos novos ficheiros de certificado a partir desse computador.
Use um computador que possa se conectar ao ponto de extremidade privilegiado do Azure Stack Hub para as próximas etapas. Certifique-se de que acede aos novos ficheiros de certificado a partir desse computador.
Abra o ISE do PowerShell para executar os próximos blocos de script.
Importe o certificado para a central de hospedagem do administrador.
$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 }Importe o certificado para o ponto de extremidade de hospedagem:
$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 }
Atualizar configuração de DNS
Observação
Esta etapa não é necessária se você tiver usado a delegação de Zona DNS para Integração DNS.
Se os registros individuais do host A tiverem sido configurados para publicar pontos de extremidade do Azure Stack Hub, você precisará criar dois registros de host A adicionais:
| IP (Protocolo de Internet) | Hostname (Nome do anfitrião) | Tipo |
|---|---|---|
| <IP> | *.Adminhosting.<Região>.<FQDN> | Um |
| <IP> | *. Hospedagem.<Região>.<FQDN> | Um |
Os IPs alocados podem ser recuperados ao utilizar o ponto de extremidade privilegiado e executar o cmdlet Get-AzureStackStampInformation.
Portas e protocolos
O artigo Integração do datacenter do Azure Stack Hub - Publicar pontos de extremidade aborda as portas e os protocolos que exigem comunicação de entrada para disponibilizar o Azure Stack Hub antes do lançamento do host de extensão.
Publicar novos pontos de extremidade
Há dois novos pontos de extremidade que devem ser acessíveis através do firewall. Os IPs alocados do pool VIP público podem ser recuperados usando o código a seguir que deve ser executado a partir do ponto de extremidade privilegiado do seu ambiente do 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
Saída da amostra
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
Observação
Faça essa alteração antes de habilitar o host de extensão. Isso permite que os portais do Azure Stack Hub sejam continuamente acessíveis.
| Ponto final (VIP) | Protocolo | Portos |
|---|---|---|
| Hospedagem de administradores | HTTPS | 443 |
| Alojamento | HTTPS | 443 |
Atualizar regras de publicação existentes (após a ativação do servidor de extensões)
Observação
O Pacote de Atualização do Azure Stack Hub 1808 ainda não habilita o host de extensão. Ele permite que você se prepare para o host de extensão importando os certificados necessários. Não feche nenhuma porta antes que o host de extensão seja habilitado automaticamente por meio de um pacote de atualização do Azure Stack Hub após a atualização 1808.
As seguintes portas atuais de endpoint devem ser fechadas nas suas regras de firewall atuais.
Observação
É recomendável fechar essas portas após a validação bem-sucedida.
| Ponto final (VIP) | Protocolo | Portos |
|---|---|---|
| Portal (administrador) | HTTPS | 12495 12499 12646 12647 12648 12649 12650 13001 13003 13010 13011 13012 13020 13021 13026 30015 |
| Portal (utilizador) | HTTPS | 12495 12649 13001 13010 13011 13012 13020 13021 30015 13003 |
| Azure Resource Manager (administrador) | HTTPS | 30024 |
| Azure Resource Manager (usuário) | HTTPS | 30024 |
Próximos passos
- Saiba mais sobre a integração com o Firewall.
- Saiba mais sobre a geração de solicitações de assinatura de certificados do Azure Stack Hub.