Zelfstudie: HSM's implementeren in een bestaand virtueel netwerk met behulp van PowerShell
De service Azure Toegewezen HSM biedt een fysiek apparaat voor gebruik door één klant, met volledige administratieve controle en verantwoordelijkheid voor volledig beheer. Omdat fysieke hardware wordt verstrekt, moet Microsoft regelen hoe deze apparaten worden toegewezen om ervoor te zorgen dat capaciteit effectief wordt beheerd. Als gevolg hiervan is de toegewezen HSM-service binnen een Azure-abonnement normaal gesproken niet zichtbaar voor het inrichten van resources. Elke Azure-klant die toegang nodig heeft tot de toegewezen HSM-service, moet eerst contact opnemen met de leidinggevende van het Microsoft-account om registratie voor de toegewezen HSM-service aan te vragen. Pas nadat dit proces is voltooid, is het inrichten mogelijk.
In deze zelfstudie wordt een typisch inrichtingsproces getoond, waarin:
- Een klant al een virtueel netwerk heeft
- De klant een virtuele machine heeft
- De klant HSM-resources moet toevoegen aan de bestaande omgeving.
Een typische implementatiearchitectuur met hoge beschikbaarheid voor meerdere regio's is als volgt:
Deze zelfstudie is gericht op een paar HSM's en de vereiste ExpressRoute-gateway (zie Subnet 1 hierboven) die worden geïntegreerd in een bestaand virtueel netwerk (zie VNET 1 hierboven). Alle andere resources zijn standaard Azure-resources. Hetzelfde integratieproces kan worden gebruikt voor HSM's in subnet 4 op VNET 3 hierboven.
Notitie
Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.
Vereisten
Azure Dedicated HSM is momenteel niet beschikbaar in Azure Portal, dus alle interacties met de service zijn via de opdrachtregel of met behulp van PowerShell. In deze zelfstudie wordt PowerShell gebruikt in Azure Cloud Shell. Als u nog niet eerder met PowerShell werkt, volgt u de instructies om aan de slag te gaan: Aan de slag met Azure PowerShell.
Aannames:
- U hebt een Microsoft-accountmanager toegewezen en voldoet aan de monetaire vereiste van vijf miljoen ($ 5M) USD of hoger in de totale vastgelegde Azure-omzet per jaar om in aanmerking te komen voor onboarding en gebruik van Azure Dedicated HSM.
- U hebt het registratieproces van Azure Dedicated HSM doorlopen en goedgekeurd voor het gebruik van de service. Als dat niet het geval is, neemt u contact op met de vertegenwoordiger van uw Microsoft-account voor meer informatie.
- U hebt een resourcegroep gemaakt voor deze resources en voor de nieuwe resources die in deze zelfstudie zijn geïmplementeerd.
- U hebt al het benodigde virtuele netwerk, subnet en virtuele machines gemaakt en wilt nu 2 HSM's integreren in die implementatie.
In de volgende instructies wordt ervan uitgegaan dat u al naar Azure Portal bent genavigeerd en dat u Cloud Shell hebt geopend (selecteer '>_' in de rechterbovenhoek van de portal).
Een toegewezen HSM inrichten
Het inrichten van de HSM's en het integreren in een bestaand virtueel netwerk via ExpressRoute-gateway wordt gevalideerd met behulp van het ssh-opdrachtregelprogramma om de bereikbaarheid en de basisbeschikbaarheid van het HSM-apparaat te garanderen voor verdere configuratieactiviteiten. Voor de volgende opdrachten wordt een Resource Manager-sjabloon gebruikt om de HSM-resources en bijbehorende netwerkresources te maken.
Functieregistratie valideren
Zoals vermeld, vereist elke inrichtingsactiviteit dat de Toegewezen HSM-service is geregistreerd voor uw abonnement. Voer hiervoor de volgende PowerShell-opdracht uit in Azure Portal Cloud Shell.
Get-AzProviderFeature -ProviderNamespace Microsoft.HardwareSecurityModules -FeatureName AzureDedicatedHsm
De opdracht moet de status 'Geregistreerd' retourneren voordat u verdergaat. Als u niet bent geregistreerd voor deze service, neemt u contact op met de vertegenwoordiger van uw Microsoft-account.
HSM-resources maken
Een HSM-apparaat wordt ingericht in het virtuele netwerk van een klant, waarvoor een subnet is vereist. Een afhankelijkheid voor de HSM om communicatie tussen het virtuele netwerk en het fysieke apparaat mogelijk te maken, is een ExpressRoute-gateway en ten slotte is een virtuele machine vereist voor toegang tot het HSM-apparaat met behulp van de Thales-clientsoftware.
U kunt een toegewezen HSM-resource maken met behulp van een ARM-sjabloon op basis van het volgende voorbeeld. U moet de parameters bijwerken door de regels met 'waarde':' te vervangen door de resourcenamen van uw voorkeur.
namingInfix
Voorvoegsel voor namen van HSM-resourcesExistingVirtualNetworkName
Naam van het virtuele netwerk dat voor de HSM's wordt gebruiktDedicatedHsmResourceName1
Naam van de HSM-resource in datacenter stempel 1DedicatedHsmResourceName2
Naam van de HSM-resource in datacenter stempel 2hsmSubnetRange
IP-adresbereik van subnet voor HSM'sERSubnetRange
IP-adresbereik van subnet voor VNET-gateway
Hier volgt een voorbeeld van deze wijzigingen:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json",
"contentVersion": "1.0.0.0",
"parameters": {
"namingInfix": {
"value": "MyHSM"
},
"ExistingVirtualNetworkName": {
"value": "MyHSM-vnet"
},
"DedicatedHsmResourceName1": {
"value": "HSM1"
},
"DedicatedHsmResourceName2": {
"value": "HSM2"
},
"hsmSubnetRange": {
"value": "10.0.2.0/24"
},
"ERSubnetRange": {
"value": "10.0.255.0/26"
},
}
}
Met het bijbehorende Resource Manager-sjabloonbestand worden zes resources gemaakt met deze informatie:
- Een subnet voor de HSM's in het opgegeven VNET
- Een subnet voor de gateway van het virtuele netwerk
- Een virtuele-netwerkgateway die het VNET verbindt met de HSM-apparaten
- Een openbaar IP-adres voor de gateway
- Een HSM in stempel 1
- Een HSM in stempel 2
Zodra parameterwaarden zijn ingesteld, moeten de bestanden worden geüpload naar de Cloud Shell-bestandsshare van Azure Portal voor gebruik. Selecteer in Azure Portal het symbool '>_' Cloud Shell rechtsboven, waardoor het onderste gedeelte van het scherm een opdrachtomgeving is. De opties zijn BASH en PowerShell en u moet BASH selecteren als dit nog niet is ingesteld.
Selecteer de optie uploaden/downloaden op de werkbalk om de sjabloon- en parameterbestanden te uploaden naar uw bestandsshare:
Zodra de bestanden zijn geüpload, kunt u resources maken.
Er zijn enkele vereiste resources nodig voordat u nieuwe HSM-resources maakt. U moet een virtueel netwerk hebben met subnetbereiken voor compute, HSM's en gateway. De volgende opdrachten zijn een voorbeeld van hoe een dergelijk virtueel netwerk wordt gemaakt.
$compute = New-AzVirtualNetworkSubnetConfig `
-Name compute `
-AddressPrefix 10.2.0.0/24
$delegation = New-AzDelegation `
-Name "myDelegation" `
-ServiceName "Microsoft.HardwareSecurityModules/dedicatedHSMs"
$hsmsubnet = New-AzVirtualNetworkSubnetConfig `
-Name hsmsubnet `
-AddressPrefix 10.2.1.0/24 `
-Delegation $delegation
$gwsubnet= New-AzVirtualNetworkSubnetConfig `
-Name GatewaySubnet `
-AddressPrefix 10.2.255.0/26
New-AzVirtualNetwork `
-Name myHSM-vnet `
-ResourceGroupName myRG `
-Location westus `
-AddressPrefix 10.2.0.0/16 `
-Subnet $compute, $hsmsubnet, $gwsubnet
Notitie
De belangrijkste configuratie die u voor het virtuele netwerk moet onthouden, is dat het subnet voor het HSM-apparaat delegaties moet hebben die zijn ingesteld op 'Microsoft.HardwareSecurityModules/dedicatedHSMs'. De HSM-inrichting werkt anders niet.
Nadat alle vereisten zijn ingesteld en de Resource Manager-sjabloon is bijgewerkt met uw unieke namen (ten minste de naam van de resourcegroep), voert u de volgende opdracht uit:
New-AzResourceGroupDeployment -ResourceGroupName myRG `
-TemplateFile .\Deploy-2HSM-toVNET-Template.json `
-TemplateParameterFile .\Deploy-2HSM-toVNET-Params.json `
-Name HSMdeploy -Verbose
Het duurt ongeveer 20 minuten om deze opdracht te voltooien. De optie '-uitgebreid' die wordt gebruikt, zorgt ervoor dat de status voortdurend wordt weergegeven.
Wanneer dit is voltooid, weergegeven door provisioningState: 'Succeeded', kunt u zich aanmelden bij uw bestaande virtuele machine en SSH gebruiken om de beschikbaarheid van het HSM-apparaat te garanderen.
De implementatie controleren
Voer de volgende opdrachtenset uit om te controleren of de apparaten zijn ingericht en de apparaatkenmerken weer te geven. Controleer of de resourcegroep op de juiste wijze is ingesteld en de resourcenaam overeenkomt met die in het parameterbestand.
$subid = (Get-AzContext).Subscription.Id
$resourceGroupName = "myRG"
$resourceName = "HSM1"
Get-AzResource -Resourceid /subscriptions/$subId/resourceGroups/$resourceGroupName/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/$resourceName
U kunt nu ook de resources zien met behulp van de Azure-resourceverkenner. In de Explorer vouwt u aan de linkerkant 'Abonnementen' uit. Vouw achtereenvolgens uw specifieke abonnement voor Toegewezen HSM, 'Resourcegroepen' en de gebruikte resourcegroep uit. Selecteer tot slot het item 'Resources'.
De implementatie testen
Het testen van de implementatie is een geval van verbinding maken met een virtuele machine die toegang heeft tot de HSM's en vervolgens rechtstreeks verbinding kan maken met het HSM-apparaat. Deze acties bevestigen dat de HSM bereikbaar is. Het SSH-hulpprogramma wordt gebruikt om verbinding te maken met de virtuele machine. De opdracht is vergelijkbaar met de volgende, maar met de beheerdersnaam en DNS-naam die u hebt opgegeven in de parameter.
ssh adminuser@hsmlinuxvm.westus.cloudapp.azure.com
Gebruik het wachtwoord uit het parameterbestand. Zodra u bent aangemeld bij de Virtuele Linux-machine, kunt u zich aanmelden bij de HSM met behulp van het privé-IP-adres in de portal voor het resourcevoorvoegsel <>hsm_vnic.
(Get-AzResource -ResourceGroupName myRG -Name HSMdeploy -ExpandProperties).Properties.networkProfile.networkInterfaces.privateIpAddress
Wanneer u het IP-adres hebt, voert u de volgende opdracht uit:
ssh tenantadmin@<ip address of HSM>
Als dit lukt, wordt u om een wachtwoord gevraagd. Het standaardwachtwoord is PASSWORD. De HSM vraagt u om het wachtwoord te wijzigen. Stel een sterk wachtwoord in en gebruik het mechanisme waaraan uw organisatie de voorkeur geeft om het wachtwoord op te slaan en verlies te voorkomen.
Belangrijk
Als u dit wachtwoord kwijtraakt, moet de HSM opnieuw worden ingesteld, wat verlies van uw codes betekent.
Wanneer u bent verbonden met het HSM-apparaat met behulp van ssh, voert u de volgende opdracht uit om ervoor te zorgen dat de HSM operationeel is.
hsm show
De uitvoer moet er uitzien als in de afbeelding hieronder wordt weergegeven:
Op dit moment hebt u alle resources toegewezen voor een maximaal beschikbare HSM-implementatie en gevalideerde toegang en operationele status. Voor verdere configuratie of tests is meer werk met het HSM-apparaat zelf vereist. Hiervoor moet u de instructies in de Thales Luna 7 HSM-beheerhandleiding hoofdstuk 7 volgen om de HSM te initialiseren en partities te maken. Alle documentatie en software zijn rechtstreeks vanuit Thales beschikbaar om te downloaden zodra u bent geregistreerd in de Thales-klantondersteuningsportal en een klant-id hebt. Download versie 7.2 van de clientsoftware om alle vereiste onderdelen op te halen.
Resources verwijderen of opschonen
Als u klaar bent met alleen het HSM-apparaat, kunt u het verwijderen als een resource en terugkeren naar de gratis pool. Uiteraard moet u zorg dragen voor eventuele vertrouwelijke gegevens van klanten die zich op het apparaat bevinden. De beste manier om een apparaat te "zeroize" is om het HSM-beheerderswachtwoord drie keer verkeerd op te halen (opmerking: dit is geen apparaatbeheerder, het is de werkelijke HSM-beheerder). Als veiligheidsmaatregel voor het beveiligen van sleutelmateriaal kan het apparaat pas worden verwijderd als een Azure-resource als het de status Nul heeft.
Notitie
Als u problemen hebt met de configuratie van een Thales-apparaat, neemt u contact op met Thales-klantondersteuning.
Als u de HSM-resource in Azure wilt verwijderen, kunt u de volgende opdracht gebruiken om de variabelen $te vervangen door uw unieke parameters:
$subid = (Get-AzContext).Subscription.Id
$resourceGroupName = "myRG"
$resourceName = "HSMdeploy"
Remove-AzResource -Resourceid /subscriptions/$subId/resourceGroups/$resourceGroupName/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/$resourceName
Volgende stappen
Wanneer u de stappen in de zelfstudie hebt voltooid, zijn toegewezen HSM-resources ingericht en beschikbaar in uw virtuele netwerk. U kunt deze implementatie nu aanvullen met meer resources, zoals vereist voor uw voorkeursimplementatiearchitectuur. Zie de Concepts-documenten voor meer informatie over het plannen van een implementatie. Een ontwerp met twee HSM's in een primaire regio voor beschikbaarheid op rekniveau, en twee HSM's in een secundaire regio voor regionale beschikbaarheid wordt aanbevolen. Het sjabloonbestand dat in deze zelfstudie wordt gebruikt, kan eenvoudig worden gebruikt als basis voor een implementatie met twee HSM's, maar de parameters ervan moeten worden gewijzigd om te voldoen aan uw vereisten.