Important
Azure Dedicated HSM은 사용 중지됩니다. Microsoft는 2028년 7월 31일까지 기존 전용 HSM 고객을 완전히 지원합니다. 새 고객 온보딩은 허용되지 않습니다. 자세한 내용 및 필요한 작업은 공식 Azure 업데이트를 참조하세요.
Azure Dedicated HSM 사용자인 경우 Azure Dedicated HSM에서 Managed HSM 또는 Azure Cloud HSM으로 마이그레이션을 참조하세요. 이제 Azure Cloud HSM 은 일반적으로 제공되며 Azure Dedicated HSM의 후속 제품입니다.
새 고객은 워크로드 요구 사항에 따라 Azure Cloud HSM, 관리형 HSM 또는 Azure Key Vault 등록해야 합니다. 지침은 올바른 Azure 키 관리 솔루션을 선택하는 방법을 참조하세요.
Azure Dedicated HSM은 고객이 완전한 관리 제어 권한과 전체 관리 책임을 갖는 고객 전용 물리적 디바이스를 제공합니다. 서비스가 물리적 하드웨어를 제공하므로 Microsoft는 효과적인 용량 관리를 보장하기 위해 해당 디바이스를 할당하는 방법을 제어합니다. 따라서 Azure 구독 내에서 전용 HSM 서비스는 일반적으로 리소스 프로비저닝에 표시되지 않습니다. Dedicated HSM 서비스에 액세스하려면 Microsoft 계정 임원에게 문의하여 전용 HSM 서비스에 대한 등록을 요청해야 합니다. 이 프로세스가 성공적으로 완료된 후에만 서비스를 프로비전할 수 있습니다.
이 자습서에서는 다음과 같은 일반적인 프로비전 프로세스를 보여줍니다.
- 고객에게 가상 네트워크가 이미 있습니다.
- 그들은 가상 머신을 가지고 있습니다.
- 기존 환경에 HSM 리소스를 추가해야 합니다.
일반적인 고가용성 다중 지역 배포 아키텍처는 다음과 같습니다.
본 튜토리얼은 기존 가상 네트워크(위의 VNET 1 참고)에 한 쌍의 HSM과 필수 구성 요소인 ExpressRoute 게이트웨이(위의 서브넷 1 참고)를 통합하는 과정을 중점적으로 다룹니다. 다른 모든 리소스는 표준 Azure 리소스입니다. 위의 VNET 3에서 서브넷 4의 HSM에 동일한 통합 프로세스를 사용할 수 있습니다.
Prerequisites
Azure Dedicated HSM 현재 Azure 포털에서 사용할 수 없습니다. 서비스와의 모든 상호 작용은 명령줄 또는 PowerShell을 통해 수행해야 합니다. 이 자습서에서는 Azure Cloud Shell CLI(명령줄) 인터페이스를 사용합니다. Azure CLI가 처음이라면 여기: Azure CLI 2.0 시작 지침을 따르세요.
가정:
- Azure Dedicated HSM 온보딩 및 사용 자격을 얻으려면 할당된 Microsoft Account Manager가 있어야 합니다.
- 귀하는 Azure Dedicated HSM 등록 프로세스를 거쳤으며 서비스 사용이 승인되었습니다. 그렇지 않은 경우 Microsoft 계정 담당자에게 문의하세요.
- 이러한 리소스에 대한 리소스 그룹을 만들었으며, 이 자습서에서 배포된 새 리소스가 해당 그룹에 가입됩니다.
- 다이어그램에 따라 필요한 가상 네트워크, 서브넷 및 가상 머신을 이미 만들었으며 이제 2개의 HSM을 해당 배포에 통합하려고 합니다.
이 문서의 모든 지침에서는 사용자가 Azure 포털에 있고 Cloud Shell 열려 있다고 가정합니다(포털의 오른쪽 위에 있는 ">_"을 선택).
전용 HSM 프로비저닝
HSM을 프로비전하고 ExpressRoute 게이트웨이를 통해 기존 가상 네트워크에 통합하는 작업은 ssh를 사용하여 검증됩니다. 이 유효성 검사는 추가 구성 작업에 대한 HSM 디바이스의 연결 가능성 및 기본 가용성을 보장하는 데 도움이 됩니다.
기능 등록 확인
모든 프로비저닝 작업을 수행하려면 전용 HSM 서비스가 구독에 등록되어야 합니다. 이를 확인하려면 Azure 포털의 Cloud Shell에서 다음 명령을 실행합니다.
az feature show \
--namespace Microsoft.HardwareSecurityModules \
--name AzureDedicatedHSM
명령은 "Registered" 상태를 반환해야 합니다. 명령이 "Registered"를 반환하지 않는 경우 Microsoft 계정 담당자에게 문의하여 이 서비스에 등록해야 합니다.
HSM 리소스 만들기
HSM 리소스를 만들기 전에 몇 가지 필수 구성 요소 리소스가 필요합니다. 컴퓨팅, HSM 및 게이트웨이에 대한 서브넷 범위가 있는 가상 네트워크가 있어야 합니다. 다음 명령은 이러한 가상 네트워크를 만드는 작업의 예입니다.
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
Note
가상 네트워크에 대한 가장 중요한 구성은 HSM 디바이스의 서브넷에 위임이 "Microsoft.HardwareSecurityModules/dedicatedHSMs"로 설정되어 있어야 한다는 것입니다. 이 옵션을 설정하지 않으면 HSM 프로비저닝이 작동하지 않습니다.
가상 네트워크에는 ExpressRoute 게이트웨이도 필요합니다. 게이트웨이가 없으면 디바이스를 가상 네트워크에 연결하는 동안 오류가 발생하여 HSM 만들기 작업이 실패합니다.
az network vnet-gateway create 명령과 ErGwScale SKU를 사용하여 게이트웨이를 만듭니다. Azure는 게이트웨이의 공용 IP 주소를 자동으로 할당하고 관리하므로 공용 IP 리소스를 만들거나 --public-ip-addresses 매개 변수를 전달하지 마세요.
az network vnet-gateway create \
--resource-group myRG \
--name myergw \
--vnet myHSM-vnet \
--gateway-type ExpressRoute \
--sku ErGwScale \
--min-scale-unit 1 \
--max-scale-unit 1
게이트웨이를 배포하는 데 약 17분이 걸립니다.
네트워크를 구성한 후 이러한 Azure CLI 명령을 사용하여 HSM을 프로비전합니다.
az dedicated-hsm create 명령을 사용하여 첫 번째 HSM을 프로비전합니다. HSM의 이름은 hsm1입니다. 구독 변경:
az dedicated-hsm create --location westus --name hsm1 --resource-group myRG \ --stamp-id stamp1 --sku "SafeNet Luna Network HSM A790" \ --subnet id="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myRG/providers/Microsoft.Network/virtualNetworks/myHSM-vnet/subnets/hsmsubnet" \ --network-interfaces private-ip-address=10.2.1.4HSM 만들기 작업을 완료하는 데 약 7분이 걸립니다.
현재 HSM을 보려면 az dedicated-hsm show 명령을 실행합니다.
az dedicated-hsm show --resource-group myRG --name hsm1다음 명령을 사용하여 두 번째 HSM을 프로비전합니다.
az dedicated-hsm create --location westus --name hsm2 --resource-group myRG \ --stamp-id stamp2 --sku "SafeNet Luna Network HSM A790" \ --subnet id="/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myRG/providers/Microsoft.Network/virtualNetworks/myHSM-vnet/subnets/hsmsubnet" \ --network-interfaces private-ip-address=10.2.1.5az dedicated-hsm list 명령을 실행하여 현재 HSM에 대한 세부 정보를 확인합니다.
az dedicated-hsm list --resource-group myRG
유용할 수 있는 몇 가지 다른 명령이 있습니다. HSM을 업데이트하려면 az dedicated-hsm update 명령을 사용합니다:
az dedicated-hsm update --resource-group myRG --name hsm1
HSM을 삭제하려면 az dedicated-hsm delete 명령을 사용합니다.
az dedicated-hsm delete --resource-group myRG --name hsm1
배포 확인
디바이스가 프로비전되었는지 확인하고 디바이스 특성을 보려면 다음 명령 집합을 실행합니다. 리소스 그룹이 적절하게 설정되고 리소스 이름이 매개 변수 파일에 있는 것과 정확히 일치하는지 확인합니다.
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
출력은 다음 출력과 비슷합니다.
{
"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"
}
이제 Azure resource explorer를 사용하여 리소스를 볼 수도 있습니다. 탐색기에서 "구독"을 확장하고, 전용 HSM에 대한 특정 구독을 확장하고, "리소스 그룹"을 확장하고, 사용한 리소스 그룹을 확장하고, 마지막으로 "리소스" 항목을 선택합니다.
배포 테스트
배포 테스트는 하나 이상의 HSM에 액세스할 수 있는 가상 머신에 연결한 다음 HSM 디바이스에 직접 연결하는 것으로 수행할 수 있습니다. 이러한 작업은 HSM에 연결 가능한 상태임을 확인합니다. ssh 도구는 가상 머신에 연결하는 데 사용됩니다. 이 명령은 다음과 비슷하지만, 매개 변수에 지정한 관리자 이름 및 DNS 이름이 반영됩니다.
ssh adminuser@hsmlinuxvm.westus.cloudapp.azure.com
DNS 이름 대신 VM의 IP 주소를 사용할 수도 있습니다. 명령이 성공하면 암호를 입력하라는 메시지가 표시됩니다. 가상 머신에 로그온한 후에는 HSM과 연결된 네트워크 인터페이스 리소스에 대한 포털에 있는 개인 IP 주소를 사용하여 HSM에 로그인할 수 있습니다.
Note
"숨겨진 형식 표시" 확인란을 선택하면 HSM 리소스가 표시됩니다.
스크린샷에서 "HSM1_HSMnic" 또는 "HSM2_HSMnic"를 클릭하면 적절한 개인 IP 주소가 표시됩니다. 그렇지 않은 경우 az resource show 명령은 올바른 IP 주소를 식별하는 방법입니다.
올바른 IP 주소가 있는 경우 해당 주소로 바꾸어 다음 명령을 실행합니다.
ssh tenantadmin@10.0.2.4
성공하면 암호를 입력하라는 메시지가 표시됩니다. 기본 암호는 PASSWORD이며 HSM은 먼저 암호를 변경하도록 요청하므로 강력한 암호를 설정하고 조직에서 선호하는 방법을 사용해 암호를 저장하고 분실을 방지하십시오.
Important
이 암호를 분실한 경우 HSM을 재설정해야 하며 이는 키를 분실하는 것을 의미합니다.
ssh를 사용하여 HSM에 연결된 경우 다음 명령을 실행하여 HSM이 작동하는지 확인합니다.
hsm show
출력은 다음과 같습니다.
이 시점에서 고가용성을 위한 두 개의 HSM 배포에 필요한 모든 리소스를 할당하고 액세스 및 운영 상태를 검증했습니다. 추가 구성 또는 테스트에는 HSM 디바이스 자체를 사용한 추가 작업이 필요합니다. 이를 위해 Thales Luna 7 HSM 관리 가이드 7장의 지침에 따라 HSM을 초기화하고 파티션을 만들어야 합니다. Thales 고객 지원 포털에 등록되고 고객 ID가 있으면 모든 설명서와 소프트웨어를 Thales에서 직접 다운로드할 수 있습니다. 클라이언트 소프트웨어 버전 7.2를 다운로드하여 필요한 모든 구성 요소를 가져옵니다.
리소스 삭제 또는 정리
HSM 디바이스 사용을 마쳤다면 리소스로 삭제할 수 있으며 가용 풀로 반환할 수 있습니다. 이 작업을 수행할 때의 분명한 우려 사항은 디바이스에 있는 중요한 고객 데이터입니다. 디바이스를 "제로화"하는 가장 좋은 방법은 HSM 관리자 암호를 세 번 틀리게 입력하는 것입니다. (어플라이언스 관리자가 아니라, 실제 HSM 관리자) 키 자료를 보호하기 위한 안전 조치로서 디바이스는 제로화된 상태가 될 때까지 Azure 리소스로 삭제할 수 없습니다.
Note
Thales 디바이스 구성에 문제가 있는 경우 Thales 고객 지원에 문의하세요.
리소스 그룹의 모든 리소스 사용을 마쳤다면 다음 명령을 사용하여 제거할 수 있습니다.
az group delete \
--resource-group myRG \
--name HSMdeploy \
--verbose
다음 단계
자습서의 단계를 완료하면 전용 HSM 리소스가 프로비전되고 필요한 HSM이 있는 가상 네트워크와 HSM과의 통신을 가능하게 하는 추가 네트워크 구성 요소가 있습니다. 이제 선택한 배포 아키텍처에 따라 필요한 리소스를 더 추가하여 이 배포를 보완할 수 있습니다. 배포 계획에 도움이 되는 자세한 내용은 개념 문서를 참조하세요. 주 지역의 두 개 HSM은 랙 수준의 가용성을 담당하고, 보조 지역의 두 개 HSM은 지역 가용성을 담당하는 설계를 권장합니다.