Příprava pro hostitele rozšíření v centru Azure StackPrepare for extension host in Azure Stack Hub

Hostitel rozšíření zabezpečuje Azure Stack centra tím, že snižuje počet požadovaných portů TCP/IP.The extension host secures Azure Stack Hub by reducing the number of required TCP/IP ports. Tento článek se zabývá přípravou centra Azure Stack pro hostitele rozšíření, který se automaticky povolí prostřednictvím balíčku aktualizace centra Azure Stack po aktualizaci 1808.This article looks at preparing Azure Stack Hub for the extension host that is automatically enabled through an Azure Stack Hub update package after the 1808 update. Tento článek se týká Azure Stack centra aktualizací 1808, 1809 a 1811.This article applies to Azure Stack Hub updates 1808, 1809, and 1811.

Požadavky na certifikátyCertificate requirements

Hostitel rozšíření implementuje dva nové obory názvů domény pro zaručení jedinečných hostitelských záznamů pro každé rozšíření portálu.The extension host implements two new domain namespaces to guarantee unique host entries for each portal extension. Nové obory názvů domény vyžadují pro zajištění zabezpečené komunikace dva další certifikáty se zástupnými znaky.The new domain namespaces require two additional wildcard certificates to ensure secure communication.

V tabulce jsou uvedeny nové obory názvů a přidružené certifikáty:The table shows the new namespaces and the associated certificates:

Složka pro nasazeníDeployment Folder Požadovaný předmět certifikátu a alternativní názvy subjektu (SAN)Required certificate subject and subject alternative names (SAN) Rozsah (na oblast)Scope (per region) Obor názvů subdoménySubdomain namespace
Hostitel rozšíření SprávceAdmin extension host *. adminhosting. <region> .<fqdn>*.adminhosting.<region>.<fqdn> (Zástupné certifikáty SSL)(Wildcard SSL Certificates) Hostitel rozšíření SprávceAdmin extension host adminhosting. <region> ..<fqdn>adminhosting.<region>.<fqdn>
Hostitel veřejného rozšířeníPublic extension host *. hostování. <region> ..<fqdn>*.hosting.<region>.<fqdn> (Zástupné certifikáty SSL)(Wildcard SSL Certificates) Hostitel veřejného rozšířeníPublic extension host hostování. <region> ..<fqdn>hosting.<region>.<fqdn>

Podrobné požadavky na certifikáty najdete v tématu požadavky na certifikát infrastruktury veřejných klíčů služby Azure Stack hub.For detailed certificate requirements, see Azure Stack Hub public key infrastructure certificate requirements.

Vytvořit žádost o podepsání certifikátuCreate certificate signing request

Nástroj pro kontrolu připravenosti centra Azure Stack umožňuje vytvořit žádost o podepsání certifikátu pro dva nové a požadované certifikáty SSL.The Azure Stack Hub Readiness Checker tool lets you create a certificate signing request for the two new and required SSL certificates. Postupujte podle kroků v článku generování žádosti o podepsání certifikátů centra Azure Stack.Follow the steps in the article Azure Stack Hub certificates signing request generation.

Poznámka

Tento krok můžete přeskočit v závislosti na tom, jak jste si vyžádali certifikáty SSL.You may skip this step depending on how you requested your SSL certificates.

Ověřit nové certifikátyValidate new certificates

  1. Otevřete PowerShell se zvýšenými oprávněními na hostiteli životního cyklu hardwaru nebo pracovní stanici správy centra Azure Stack.Open PowerShell with elevated permission on the hardware lifecycle host or the Azure Stack Hub management workstation.

  2. Spuštěním následující rutiny nainstalujte nástroj pro kontrolu připravenosti centra Azure Stack:Run the following cmdlet to install the Azure Stack Hub Readiness Checker tool:

    Install-Module -Name Microsoft.AzureStack.ReadinessChecker
    
  3. Spuštěním následujícího skriptu vytvořte požadovanou strukturu složek:Run the following script to create the required folder structure:

    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}
    

    Poznámka

    Pokud nasazujete s Azure Active Directory federované služby (AD FS), musí se do $Directories ve skriptu přidat tyto adresáře: ADFS , Graph .If you deploy with Azure Active Directory Federated Services (AD FS) the following directories must be added to $directories in the script: ADFS, Graph.

  4. V příslušných adresářích umístěte existující certifikáty, které aktuálně používáte, do centra Azure Stack.Place the existing certificates, which you're currently using in Azure Stack Hub, in appropriate directories. Zadejte například certifikát ARM správce do Arm Admin složky.For example, put the Admin ARM certificate in the Arm Admin folder. A potom umístěte nově vytvořené hostitelské certifikáty do Admin extension host Public extension host adresářů a.And then put the newly created hosting certificates in the Admin extension host and Public extension host directories.

  5. Spuštěním následující rutiny spusťte kontrolu certifikátu:Run the following cmdlet to start the certificate check:

    $pfxPassword = Read-Host -Prompt "Enter PFX Password" -AsSecureString 
    
    Start-AzsReadinessChecker -CertificatePath c:\certificates -pfxPassword $pfxPassword -RegionName east -FQDN azurestack.contoso.com -IdentitySystem AAD
    
  6. Zkontroluje výstup a pokud všechny certifikáty přejdou všechny testy.Check the output and if all certificates pass all tests.

Importovat certifikáty hostitele rozšířeníImport extension host certificates

Pro další kroky použijte počítač, který se může připojit k privilegovanému koncovému bodu centra Azure Stack.Use a computer that can connect to the Azure Stack Hub privileged endpoint for the next steps. Ujistěte se, že máte přístup k novým souborům certifikátů z tohoto počítače.Make sure you have access to the new certificate files from that computer.

  1. Pro další kroky použijte počítač, který se může připojit k privilegovanému koncovému bodu centra Azure Stack.Use a computer that can connect to the Azure Stack Hub privileged endpoint for the next steps. Ujistěte se, že máte přístup k novým souborům certifikátů z tohoto počítače.Make sure you access to the new certificate files from that computer.

  2. Otevřete PowerShell ISE a spusťte další bloky skriptu.Open PowerShell ISE to execute the next script blocks.

  3. Importujte certifikát pro koncový bod hostování správce.Import the certificate for the admin hosting endpoint.

    
    $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
    }
    
  4. Importujte certifikát pro hostitelský koncový bod.Import the certificate for the hosting endpoint.

    $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
    }
    

Aktualizovat konfiguraci DNSUpdate DNS configuration

Poznámka

Tento krok není nutný, pokud jste použili delegování zóny DNS pro integraci DNS.This step isn't required if you used DNS Zone delegation for DNS Integration. Pokud jsou u jednotlivých hostitelů nakonfigurované záznamy pro publikování koncových bodů centra Azure Stack, je potřeba vytvořit dva další záznamy hostitele A:If individual host A records have been configured to publish Azure Stack Hub endpoints, you need to create two additional host A records:

IP adresaIP Název hostiteleHostname TypType
<IP> *. Adminhosting. <Region> ..<FQDN>*.Adminhosting.<Region>.<FQDN> AA
<IP> *. Hostování. <Region> ..<FQDN>*.Hosting.<Region>.<FQDN> AA

Přidělené IP adresy se dají načíst pomocí privilegovaného koncového bodu spuštěním rutiny Get-AzureStackStampInformation.Allocated IPs can be retrieved using the privileged endpoint by running the cmdlet Get-AzureStackStampInformation.

Porty a protokolyPorts and protocols

Článek Azure Stack centra pro integraci Datacenter – publikování koncových bodů pokrývá porty a protokoly, které vyžadují příchozí komunikaci pro publikování Azure Stackho centra před zavedením hostitele rozšíření.The article Azure Stack Hub datacenter integration - Publish endpoints covers the ports and protocols that require inbound communication to publish Azure Stack Hub before the extension host rollout.

Publikování nových koncových bodůPublish new endpoints

Pomocí brány firewall musí být publikovány dva nové koncové body.There are two new endpoints required to be published through your firewall. Přidělené IP adresy z fondu veřejných VIP adres se dají načíst pomocí následujícího kódu, který se musí spustit z privilegovaného koncového bodu prostředíAzure Stack hub.The allocated IPs from the public VIP pool can be retrieved using the following code that must be run from your Azure Stack Hub environment's privileged endpoint.

# Create a PEP Session
winrm s winrm/config/client '@{TrustedHosts= "<IpOfERCSMachine>"}'
$PEPCreds = Get-Credential
$PEPSession = New-PSSession -ComputerName <IpOfERCSMachine> -Credential $PEPCreds -ConfigurationName "PrivilegedEndpoint"

# 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

Vzorový výstupSample Output

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

Poznámka

Tuto změnu udělejte před tím, než povolíte hostitele rozšíření.Make this change before enabling the extension host. To umožňuje, aby byly portály centra Azure Stack nepřetržitě přístupné.This allows the Azure Stack Hub portals to be continuously accessible.

Koncový bod (VIP)Endpoint (VIP) ProtokolProtocol PortyPorts
Hostování správcůAdmin Hosting HTTPSHTTPS 443443
HostingHosting HTTPSHTTPS 443443

Aktualizovat existující pravidla publikování (povolení hostitele rozšíření)Update existing publishing Rules (Post enablement of extension host)

Poznámka

Balíček aktualizace centra 1808 Azure Stack ještě nepovoluje hostitele rozšíření.The 1808 Azure Stack Hub Update Package does not enable extension host yet. Umožňuje připravit hostitele rozšíření importem požadovaných certifikátů.It lets you prepare for extension host by importing the required certificates. Než bude hostitel rozšíření automaticky povolený prostřednictvím balíčku aktualizace centra Azure Stack po aktualizaci 1808, nezavírejte žádné porty.Don't close any ports before extension host is automatically enabled through an Azure Stack Hub update package after the 1808 update.

Následující existující porty koncového bodu musí být uzavřeny ve stávajících pravidlech brány firewall.The following existing endpoint ports must be closed in your existing firewall rules.

Poznámka

Po úspěšném ověření se tyto porty doporučuje zavřít.It's recommended to close those ports after successful validation.

Koncový bod (VIP)Endpoint (VIP) ProtokolProtocol PortyPorts
Portál (správce)Portal (administrator) HTTPSHTTPS 1249512495
1249912499
1264612646
1264712647
1264812648
1264912649
1265012650
1300113001
1300313003
1301013010
1301113011
1301213012
1302013020
1302113021
1302613026
3001530015
Portál (uživatel)Portal (user) HTTPSHTTPS 1249512495
1264912649
1300113001
1301013010
1301113011
1301213012
1302013020
1302113021
3001530015
1300313003
Azure Resource Manager (správce)Azure Resource Manager (administrator) HTTPSHTTPS 3002430024
Azure Resource Manager (uživatel)Azure Resource Manager (user) HTTPSHTTPS 3002430024

Další krokyNext steps