Tutorial: Implantando HSMs em uma rede virtual existente usando a CLI do Azure
O HSM Dedicado do Azure fornece um dispositivo físico para uso exclusivo do cliente, com controle administrativo completo e responsabilidade total de gerenciamento. O uso de dispositivos físicos cria a necessidade de a Microsoft controlar a alocação de dispositivos para garantir que a capacidade seja gerenciada de forma eficaz. Como resultado, dentro de uma assinatura do Azure, o serviço HSM dedicado normalmente não estará visível para provisionamento de recursos. Qualquer cliente do Azure que necessite de acesso ao serviço HSM Dedicado deve primeiro contactar o respetivo executivo de conta Microsoft para solicitar o registo para o serviço HSM Dedicado. Somente quando esse processo for concluído com êxito é que o provisionamento será possível.
Este tutorial mostra um processo de provisionamento típico onde:
- Um cliente já tem uma rede virtual
- Eles têm uma máquina virtual
- Eles precisam adicionar recursos de HSM a esse ambiente existente.
Uma arquitetura de implantação típica, de alta disponibilidade e em várias regiões pode ter a seguinte aparência:
Este tutorial se concentra em um par de HSMs e gateway de Rota Expressa necessário (consulte Sub-rede 1 acima) sendo integrado em uma rede virtual existente (consulte VNET 1 acima). Todos os outros recursos são recursos padrão do Azure. O mesmo processo de integração pode ser usado para HSMs na sub-rede 4 na VNET 3 acima.
Pré-requisitos
O HSM Dedicado do Azure não está atualmente disponível no portal do Azure. Toda a interação com o serviço será via linha de comando ou usando o PowerShell. Este tutorial usará a interface de linha de comando (CLI) no Azure Cloud Shell. Se você é novo na CLI do Azure, siga as instruções de introdução aqui: Introdução à CLI do Azure 2.0.
Pressupostos:
- Você tem um Gerente de Conta da Microsoft atribuído e atende ao requisito monetário de cinco milhões de dólares (US$ 5 milhões) ou mais em receita geral comprometida do Azure anualmente para se qualificar para integração e uso do HSM Dedicado do Azure.
- Você passou pelo processo de registro do HSM Dedicado do Azure e foi aprovado para uso do serviço. Caso contrário, contacte o seu representante da conta Microsoft para obter detalhes.
- Você criou um Grupo de Recursos para esses recursos e os novos implantados neste tutorial ingressarão nesse grupo.
- Você já criou a rede virtual, a sub-rede e as máquinas virtuais necessárias de acordo com o diagrama acima e agora deseja integrar 2 HSMs nessa implantação.
Todas as instruções abaixo pressupõem que você já navegou para o portal do Azure e abriu o Cloud Shell (selecione ">_" no canto superior direito do portal).
Provisionamento de um HSM dedicado
O provisionamento de HSMs e a integração deles em uma rede virtual existente via gateway ExpressRoute serão validados usando ssh. Essa validação ajuda a garantir a acessibilidade e a disponibilidade básica do dispositivo HSM para quaisquer outras atividades de configuração.
Validando o registro de recursos
Como mencionado acima, qualquer atividade de provisionamento requer que o serviço HSM dedicado esteja registrado para sua assinatura. Para validar isso, execute os seguintes comandos no Cloud Shell do portal do Azure.
az feature show \
--namespace Microsoft.HardwareSecurityModules \
--name AzureDedicatedHSM
Os comandos devem retornar um status de "Registrado" (como mostrado abaixo). Se os comandos não retornarem "Registrado", você precisará se registrar para este serviço entrando em contato com seu representante de conta da Microsoft.
Criando recursos de HSM
Antes de criar recursos do HSM, há alguns recursos de pré-requisito necessários. Você deve ter uma rede virtual com intervalos de sub-rede para computação, HSMs e gateway. Os comandos a seguir servem como um exemplo do que criaria tal rede virtual.
az network vnet create \
--name myHSM-vnet \
--resource-group myRG \
--address-prefix 10.2.0.0/16 \
--subnet-name compute \
--subnet-prefix 10.2.0.0/24
az network vnet subnet create \
--vnet-name myHSM-vnet \
--resource-group myRG \
--name hsmsubnet \
--address-prefixes 10.2.1.0/24 \
--delegations Microsoft.HardwareSecurityModules/dedicatedHSMs
az network vnet subnet create \
--vnet-name myHSM-vnet \
--resource-group myRG \
--name GatewaySubnet \
--address-prefixes 10.2.255.0/26
Nota
A configuração mais importante a ser observada para a rede virtual é que a sub-rede do dispositivo HSM deve ter delegações definidas como "Microsoft.HardwareSecurityModules/dedicatedHSMs". O provisionamento do HSM não funcionará sem que essa opção seja definida.
Depois de configurar sua rede, use esses comandos da CLI do Azure para provisionar seus HSMs.
Use o comando az dedicated-hsm create para provisionar o primeiro HSM. O HSM é chamado hsm1. Substitua a sua subscrição:
az dedicated-hsm create --location westus --name hsm1 --resource-group myRG --network-profile-network-interfaces \ /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myRG/providers/Microsoft.Network/virtualNetworks/MyHSM-vnet/subnets/MyHSM-vnet
Essa implantação deve levar aproximadamente 25 a 30 minutos para ser concluída, sendo a maior parte desse tempo os dispositivos HSM.
Para ver um HSM atual, execute o comando az dedicated-hsm show :
az dedicated-hsm show --resource group myRG --name hsm1
Provisione o segundo HSM usando este comando:
az dedicated-hsm create --location westus --name hsm2 --resource-group myRG --network-profile-network-interfaces \ /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myRG/providers/Microsoft.Network/virtualNetworks/MyHSM-vnet/subnets/MyHSM-vnet
Execute o comando az dedicated-hsm list para exibir detalhes sobre seus HSMs atuais:
az dedicated-hsm list --resource-group myRG
Existem alguns outros comandos que podem ser úteis. Use o comando az dedicated-hsm update para atualizar um HSM:
az dedicated-hsm update --resource-group myRG –-name hsm1
Para excluir um HSM, use o comando az dedicated-hsm delete :
az dedicated-hsm delete --resource-group myRG –-name hsm1
Verificando a implantação
Para verificar se os dispositivos foram provisionados e ver os atributos do dispositivo, execute o seguinte conjunto de comandos. Verifique se o grupo de recursos está definido adequadamente e se o nome do recurso é exatamente como você tem no arquivo de parâmetro.
subid=$(az account show --query id --output tsv)
az resource show \
--ids /subscriptions/$subid/resourceGroups/myRG/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/HSM1
az resource show \
--ids /subscriptions/$subid/resourceGroups/myRG/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/HSM2
A saída se parece com a seguinte saída:
{
"id": n/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/HSM-RG/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/HSMl",
"identity": null,
"kind": null,
"location": "westus",
"managedBy": null,
"name": "HSM1",
"plan": null,
"properties": {
"networkProfile": {
"networkInterfaces": [
{
"id": n/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/HSM-RG/providers/Microsoft.Network/networkInterfaces/HSMl_HSMnic", "privatelpAddress": "10.0.2.5",
"resourceGroup": "HSM-RG"
}
L
"subnet": {
"id": n/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/HSM-RG/providers/Microsoft.Network/virtualNetworks/demo-vnet/subnets/hsmsubnet", "resourceGroup": "HSM-RG"
}
},
"provisioningState": "Succeeded",
"stampld": "stampl",
"statusMessage": "The Dedicated HSM device is provisioned successfully and ready to use."
},
"resourceGroup": "HSM-RG",
"sku": {
"capacity": null,
"family": null,
"model": null,
"name": "SafeNet Luna Network HSM A790",
"size": null,
"tier": null
},
"tags": {
"Environment": "prod",
"resourceType": "Hsm"
},
"type": "Microsoft.HardwareSecurityModules/dedicatedHSMs"
}
Agora você também poderá ver os recursos usando o explorador de recursos do Azure. Uma vez no explorador, expanda "assinaturas" à esquerda, expanda sua assinatura específica para HSM dedicado, expanda "grupos de recursos", expanda o grupo de recursos que você usou e, finalmente, selecione o item "recursos".
Testando a implantação
O teste da implantação é um caso de conexão com uma máquina virtual que pode acessar o(s) HSM(s) e, em seguida, conectar-se diretamente ao dispositivo HSM. Essas ações confirmarão que o HSM está acessível. A ferramenta ssh é usada para se conectar à máquina virtual. O comando será semelhante ao seguinte, mas com o nome do administrador e o nome dns que você especificou no parâmetro.
ssh adminuser@hsmlinuxvm.westus.cloudapp.azure.com
O endereço IP da VM também pode ser usado no lugar do nome DNS no comando acima. Se o comando for bem-sucedido, ele solicitará uma senha e você deverá inseri-la. Depois de fazer logon na máquina virtual, você pode entrar no HSM usando o endereço IP privado encontrado no portal para o recurso de interface de rede associado ao HSM.
Nota
Observe a caixa de seleção "Mostrar tipos ocultos", que quando selecionada exibirá recursos do HSM.
Na captura de tela acima, clicar em "HSM1_HSMnic" ou "HSM2_HSMnic" mostraria o endereço IP privado apropriado. Caso contrário, o az resource show
comando usado acima é uma maneira de identificar o endereço IP correto.
Quando você tiver o endereço IP correto, execute o seguinte comando substituindo esse endereço:
ssh tenantadmin@10.0.2.4
Se for bem-sucedido, ser-lhe-á solicitada uma palavra-passe. A senha padrão é PASSWORD e o HSM primeiro pedirá que você altere sua senha, então defina uma senha forte e use qualquer mecanismo que sua organização preferir para armazenar a senha e evitar perdas.
Importante
se você perder essa senha, o HSM terá que ser redefinido e isso significa perder suas chaves.
Quando você estiver conectado ao HSM usando ssh, execute o seguinte comando para garantir que o HSM esteja operacional.
hsm show
A saída deve ficar como mostrado na imagem abaixo:
Neste ponto, você alocou todos os recursos para uma implantação de dois HSM altamente disponível e acesso validado e estado operacional. Qualquer configuração ou teste adicional envolve mais trabalho com o próprio dispositivo HSM. Para isso, você deve seguir as instruções no Thales Luna 7 HSM Administration Guide capítulo 7 para inicializar o HSM e criar partições. Toda a documentação e software estão disponíveis diretamente da Thales para download assim que estiver registado no portal de apoio ao cliente da Thales e tiver um ID de Cliente. Faça o download do Software Cliente versão 7.2 para obter todos os componentes necessários.
Excluir ou limpar recursos
Se você terminou apenas com o dispositivo HSM, ele pode ser excluído como um recurso e retornado ao pool gratuito. A preocupação óbvia ao fazer isso são quaisquer dados confidenciais do cliente que estejam no dispositivo. A melhor maneira de "zerar" um dispositivo é obter a senha de administrador do HSM errada três vezes (observação: isso não é administrador do aparelho, é o administrador do HSM real). Como medida de segurança para proteger o material da chave, o dispositivo não pode ser excluído como um recurso do Azure até que esteja no estado zerado.
Nota
Se tiver problemas com qualquer configuração do dispositivo Thales, deve contactar o apoio ao cliente da Thales.
Se tiver terminado com todos os recursos deste grupo de recursos, pode removê-los todos com o seguinte comando:
az group delete \
--resource-group myRG \
--name HSMdeploy \
--verbose
Próximos passos
Depois de concluir as etapas no tutorial, os recursos dedicados do HSM são provisionados e você tem uma rede virtual com os HSMs necessários e outros componentes de rede para habilitar a comunicação com o HSM. Agora você está em posição de complementar essa implantação com mais recursos, conforme exigido pela sua arquitetura de implantação preferida. Para obter mais informações sobre como ajudar a planejar sua implantação, consulte os documentos de conceitos. Recomenda-se um design com dois HSMs em uma região primária abordando a disponibilidade no nível do rack e dois HSMs em uma região secundária abordando a disponibilidade regional.