

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Começando com AWS CloudHSM
<a name="getting-started"></a>

Os tópicos a seguir ajudam você a criar, inicializar e ativar um cluster no AWS CloudHSM. Depois de concluir estes procedimentos, você estará pronto para gerenciar usuários e clusters, e usar as bibliotecas de software incluídas para executar operações de criptografia. Para obter a melhor experiência, siga os tópicos na ordem listada. 

**Topics**
+ [Crie grupos administrativos do IAM para AWS CloudHSM](create-iam-user.md)
+ [Crie uma nuvem privada virtual (VPC) para AWS CloudHSM](create-vpc.md)
+ [Crie um cluster em AWS CloudHSM](create-cluster.md)
+ [Analise o grupo de segurança do seu cluster no AWS CloudHSM](configure-sg.md)
+ [Inicie uma instância cliente do Amazon EC2 para interagir com AWS CloudHSM](launch-client-instance.md)
+ [Configure os grupos de segurança da instância cliente Amazon EC2 para AWS CloudHSM](configure-sg-client-instance.md)
+ [Crie um HSM em AWS CloudHSM](create-hsm.md)
+ [Verifique a identidade e a autenticidade do HSM do seu cluster em AWS CloudHSM (opcional)](verify-hsm-identity.md)
+ [Inicialize o cluster em AWS CloudHSM](initialize-cluster.md)
+ [Instalar e configurar a CLI do CloudHSM](gs_cloudhsm_cli-install.md)
+ [Ative o cluster em AWS CloudHSM](activate-cluster.md)
+ [Configurar o TLS mútuo entre o cliente e AWS CloudHSM (recomendado)](getting-started-setup-mtls.md)
+ [Crie e use chaves em AWS CloudHSM](create-apps.md)

# Crie grupos administrativos do IAM para AWS CloudHSM
<a name="create-iam-user"></a>

A primeira etapa para começar AWS CloudHSM é configurar as permissões do IAM.

Como [prática recomendada](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#create-iam-users), não use o seu Usuário raiz da conta da AWS para interagir com AWS, inclusive AWS CloudHSM. Em vez disso, use AWS Identity and Access Management (IAM) para criar um usuário do IAM, uma função do IAM ou um usuário federado. Siga as etapas na seção [Criar um usuário do IAM e um grupo de administradores do IAM](#create-iam-admin) para criar um grupo de administradores e anexar a **AdministratorAccess**política a ele. Em seguida, crie outro usuário administrador e o adicione ao grupo. Adicione outros usuários ao grupo, conforme necessário. Cada usuário que você adiciona herda a **AdministratorAccess**política do grupo. 

Outra prática recomendada é criar um grupo de AWS CloudHSM administradores que tenha somente as permissões necessárias para execução AWS CloudHSM. Adicione usuários individuais a este grupo, conforme necessário. Cada usuário herdará as permissões limitadas anexadas ao grupo, em vez do acesso completo da AWS . A [Políticas gerenciadas pelo cliente para AWS CloudHSM](identity-access-management.md#permissions-for-cloudhsm) seção a seguir contém a política que você deve anexar ao seu grupo de AWS CloudHSM administradores. 

AWS CloudHSM define uma [função vinculada ao serviço](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) para sua conta. AWS Atualmente, a função vinculada ao serviço define permissões que permitem que sua conta registre eventos. AWS CloudHSM A função pode ser criada automaticamente AWS CloudHSM ou manualmente por você. Você não pode editar a função, mas pode excluí-la. Para obter mais informações, consulte [Funções vinculadas a serviços para AWS CloudHSM](service-linked-roles.md).

## Criar um usuário do IAM e um grupo de administradores do IAM
<a name="create-iam-admin"></a>

Comece criando um usuário do IAM com um grupo de administradores para esse usuário.

### Inscreva-se para um Conta da AWS
<a name="sign-up-for-aws"></a>

Se você não tiver um Conta da AWS, conclua as etapas a seguir para criar um.

**Para se inscrever em um Conta da AWS**

1. Abra a [https://portal.aws.amazon.com/billing/inscrição.](https://portal.aws.amazon.com/billing/signup)

1. Siga as instruções online.

   Parte do procedimento de inscrição envolve receber uma chamada telefônica ou uma mensagem de texto e inserir um código de verificação pelo teclado do telefone.

   Quando você se inscreve em um Conta da AWS, um *Usuário raiz da conta da AWS*é criado. O usuário-raiz tem acesso a todos os Serviços da AWS e recursos na conta. Como prática recomendada de segurança, atribua o acesso administrativo a um usuário e use somente o usuário-raiz para executar [tarefas que exigem acesso de usuário-raiz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS envia um e-mail de confirmação após a conclusão do processo de inscrição. A qualquer momento, você pode visualizar a atividade atual da sua conta e gerenciar sua conta acessando [https://aws.amazon.com/e](https://aws.amazon.com/) escolhendo **Minha conta**.

### Criar um usuário com acesso administrativo
<a name="create-an-admin"></a>

Depois de se inscrever em um Conta da AWS, proteja seu Usuário raiz da conta da AWS Centro de Identidade do AWS IAM, habilite e crie um usuário administrativo para que você não use o usuário root nas tarefas diárias.

**Proteja seu Usuário raiz da conta da AWS**

1.  Faça login [Console de gerenciamento da AWS](https://console.aws.amazon.com/)como proprietário da conta escolhendo **Usuário raiz** e inserindo seu endereço de Conta da AWS e-mail. Na próxima página, insira a senha.

   Para obter ajuda ao fazer login usando o usuário-raiz, consulte [Fazer login como usuário-raiz](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) no *Guia do usuário do Início de Sessão da AWS *.

1. Habilite a autenticação multifator (MFA) para o usuário-raiz.

   Para obter instruções, consulte [Habilitar um dispositivo de MFA virtual para seu usuário Conta da AWS raiz (console) no Guia](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) do *usuário do IAM*.

**Criar um usuário com acesso administrativo**

1. Habilita o Centro de Identidade do IAM.

   Para obter instruções, consulte [Habilitar o Centro de Identidade do AWS IAM](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) no *Guia do usuário do Centro de Identidade do AWS IAM *.

1. No Centro de Identidade do IAM, conceda o acesso administrativo a um usuário.

   Para ver um tutorial sobre como usar o Diretório do Centro de Identidade do IAM como fonte de identidade, consulte [Configurar o acesso do usuário com o padrão Diretório do Centro de Identidade do IAM](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html) no *Guia Centro de Identidade do AWS IAM do usuário*.

**Iniciar sessão como o usuário com acesso administrativo**
+ Para fazer login com o seu usuário do Centro de Identidade do IAM, use o URL de login enviado ao seu endereço de e-mail quando o usuário do Centro de Identidade do IAM foi criado.

  Para obter ajuda para fazer login usando um usuário do IAM Identity Center, consulte Como [fazer login no portal de AWS acesso](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html) no *Guia Início de Sessão da AWS do usuário*.

**Atribuir acesso a usuários adicionais**

1. No Centro de Identidade do IAM, crie um conjunto de permissões que siga as práticas recomendadas de aplicação de permissões com privilégio mínimo.

   Para obter instruções, consulte [Criar um conjunto de permissões](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) no *Guia do usuário do Centro de Identidade do AWS IAM *.

1. Atribua usuários a um grupo e, em seguida, atribua o acesso de logon único ao grupo.

   Para obter instruções, consulte [Adicionar grupos](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) no *Guia do usuário do Centro de Identidade do AWS IAM *.

Por exemplo, políticas AWS CloudHSM que você pode anexar ao seu grupo de usuários do IAM, consulte[Gerenciamento de identidade e acesso para AWS CloudHSM](identity-access-management.md).

# Crie uma nuvem privada virtual (VPC) para AWS CloudHSM
<a name="create-vpc"></a>

Você precisa de uma nuvem privada virtual (VPC) para seu cluster em. AWS CloudHSM Se você ainda não tem uma, siga as etapas neste tópico para criar uma VPC.

**nota**  
Seguir essas etapas resultará na criação de sub-redes públicas e privadas.

**Para criar uma VPC**

1. Abra o console da Amazon VPC em [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Na barra de navegação, use o seletor de região para escolher uma das [AWS regiões em que AWS CloudHSM há suporte no momento](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloudhsm_region).

1. Selecione o botão **Criar VPC**.

1. Em **Resources to create (Recursos a serem criados)**, escolha **VPC and more (VPC e mais)**.

1. Em **Nomear tag**, digite um nome identificável como **CloudHSM**. 

1. Para o **bloco IPv6 CIDR**, selecione o bloco ** IPv6 CIDR fornecido pela Amazon para usar a IPv6 conectividade para você HSMs e AWS aloque um bloco** IPv6 CIDR para o seu cluster. Essa configuração é compatível com o Tipo de rede de pilha dupla. Mantenha a configuração padrão se você não precisar de IPv6 conectividade.

1. Deixe todas as outras opções com seus valores padrão.

1. Escolha **Criar VPC**.

1. Depois que a VPC for criada, selecione **Exibir VPC** para visualizar a VPC que você acabou de criar.

# Crie um cluster em AWS CloudHSM
<a name="create-cluster"></a>

Um cluster é uma coleção de módulos individuais de segurança de hardware (HSMs). AWS CloudHSM sincroniza os HSMs em cada cluster para que funcionem como uma unidade lógica. AWS CloudHSM *oferece dois tipos de HSMs: *hsm1.medium e hsm2m.medium*.* Ao criar um cluster, você escolhe qual dos dois estará no cluster. Para obter detalhes sobre as diferenças entre cada tipo de HSM e modo de cluster, consulte [AWS CloudHSM modos de cluster](cluster-hsm-types.md).

Quando você cria um cluster, AWS CloudHSM cria um grupo de segurança para o cluster em seu nome. Esse grupo de segurança controla o acesso à rede HSMs no cluster. Ele permite conexões de entrada somente de instâncias do Amazon Elastic Compute Cloud EC2 (Amazon) que estão no grupo de segurança. Por padrão, o security group não contém instâncias. Posteriormente, você [inicia uma instância do cliente](launch-client-instance.md) e [configura o grupo de segurança do cluster](configure-sg.md) para permitir a comunicação e as conexões com o HSM.

**Considerações**
+ Veja a seguir algumas considerações ao criar um cluster no AWS CloudHSM:
  + Quando você cria um cluster, AWS CloudHSM cria uma [função vinculada ao serviço chamada AWSService RoleForCloud HSM](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html). Se você AWS CloudHSM não conseguir criar a função ou se a função ainda não existir, talvez você não consiga criar um cluster. Para obter mais informações, consulte [Resolvendo falhas na criação de AWS CloudHSM clusters](troubleshooting-create-cluster.md). Para obter mais informações sobre funções vinculadas ao serviço, consulte [Funções vinculadas a serviços para AWS CloudHSM](service-linked-roles.md). 
  +  Se você estiver usando o [endpoint de AWS CloudHSM pilha dupla](https://docs.aws.amazon.com/general/latest/gr/cloudhsm.html) (ou seja, cloudhsmv2). *<region>*.api.aws), certifique-se de que suas políticas do IAM estejam atualizadas para serem processadas. IPv6 Para obter mais informações, consulte a [IPv6 seção Atualizar políticas do IAM para Segurança](https://docs.aws.amazon.com/cloudhsm/latest/userguide/ip-access.html). 

Você pode criar um cluster do [console do AWS CloudHSM](https://console.aws.amazon.com/cloudhsm/), a [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/) ou a API do AWS CloudHSM . 

Para obter detalhes sobre argumentos de cluster APIs, consulte [https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-cluster.html](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-cluster.html)na Referência de AWS CLI Comandos.

------
#### [ Console ]

**Para criar um cluster (console)**

1. Abra o AWS CloudHSM console em [https://console.aws.amazon.com/cloudhsm/casa](https://console.aws.amazon.com/cloudhsm/home).

1. Na barra de navegação, use o seletor de região para selecionar uma das [regiões AWS onde o AWS CloudHSM é suportado atualmente](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloudhsm_region). 

1. Selecione **Create cluster (Criar cluster)**.

1. Na seção **Configuração de cluster**, faça o seguinte:

   1. Em **VPC**, selecione a VPC que você criou em [Crie uma nuvem privada virtual (VPC) para AWS CloudHSM](create-vpc.md).

   1. Em **Availability Zone(s)**, ao lado de cada Zona de disponibilidade, escolha a sub-rede privada que você criou. 
**nota**  
Mesmo que não AWS CloudHSM haja suporte em uma determinada zona de disponibilidade, o desempenho não deve ser afetado, pois balanceia AWS CloudHSM automaticamente a carga em tudo HSMs em um cluster. Consulte [AWS CloudHSM Regiões e endpoints](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloudhsm_region) em *Referência geral da AWS*para ver o suporte da zona de disponibilidade para AWS CloudHSM.

   1. Para o **tipo de HSM**, selecione o tipo de HSM que pode ser criado em seu cluster junto com o modo desejado do cluster. Para ver quais tipos de HSM são compatíveis em cada região, consulte a [calculadora AWS CloudHSM de preços](https://aws.amazon.com/cloudhsm/pricing/).
**Importante**  
Depois que o cluster for criado, o modo cluster não pode ser alterado. Para obter informações sobre qual tipo de cluster é adequado para seu caso de uso, consulte [AWS CloudHSM modos de cluster](cluster-hsm-types.md).

   1. Em **Tipo de rede**, escolha os protocolos de endereço IP para acessar seu HSMs. IPv4 limita a comunicação entre seu aplicativo e HSMs IPv4 apenas a. Essa é a opção padrão. O Dual-Stack permite a comunicação e IPv4 a comunicação. IPv6 Para usar o dual-stack, adicione ambos IPv4 e às IPv6 CIDRs suas configurações de VPC e sub-rede. É difícil alterar o tipo de rede após a configuração inicial. Para modificá-lo, crie um backup do seu cluster existente e restaure um novo cluster com o tipo de rede desejado. Para obter mais informações, consulte [Criação de AWS CloudHSM clusters a partir de backups](https://docs.aws.amazon.com/cloudhsm/latest/userguide/create-cluster-from-backup.html) 

   1. Para a **Origem do cluster**, especifique se você deseja criar um cluster ou restaurar um de um backup existente.
      + Backups de clusters no modo não FIPS podem ser usados apenas para restaurar clusters que estão no modo não FIPS.
      + Backups de clusters no modo FIPS podem ser usados apenas para restaurar clusters que estão no modo FIPS.

1. Escolha **Próximo**.

1. Especifique por quanto tempo o serviço deve reter os backups.

   1. Aceite o período de retenção padrão de 90 dias ou digite um novo valor entre 7 e 379 dias. O serviço excluirá automaticamente os backups presentes nesse cluster que sejam mais antigos do que o valor especificado. Você pode alterar esse valor depois. Para obter mais informações, consulte [Configurar a retenção de backup](manage-backup-retention.md).

1. Escolha **Próximo**.

1. (Opcional) Digite uma chave de tag e um valor de tag opcional. Para adicionar mais de uma tag ao cluster, selecione **Adicionar tag**.

1. Escolha **Review (Revisar)**.

1. Reveja sua configuração de cluster e escolha **Create cluster (Criar cluster)**.

Se suas tentativas de criar um cluster falharem, isso pode estar relacionado a problemas com as funções AWS CloudHSM vinculadas ao serviço. Para obter ajuda para resolver essa falha, consulte [Resolvendo falhas na criação de AWS CloudHSM clusters](troubleshooting-create-cluster.md).

------
#### [ AWS CLI ]

**Para criar um cluster ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ Em um prompt de comando, execute o comando **[create-cluster](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-cluster.html)**. Especifique o tipo de instância do HSM, o período de retenção de backup e a sub-rede IDs das sub-redes em que você planeja criar. HSMs Use a sub-rede IDs das sub-redes privadas que você criou. Especifique apenas uma sub-rede por zona de disponibilidade. 

  ```
  $ aws cloudhsmv2 create-cluster --hsm-type hsm2m.medium \
                      --backup-retention-policy Type=DAYS,Value=<number of days> \
                      --subnet-ids <subnet ID> \
                      --mode <FIPS> \
                      --network-type <IPV4>
  
  {
      "Cluster": {
          "BackupPolicy": "DEFAULT",
          "BackupRetentionPolicy": {
              "Type": "DAYS",
              "Value": 90
           },
          "VpcId": "vpc-50ae0636",
          "SubnetMapping": {
              "us-west-2b": "subnet-49a1bc00",
              "us-west-2c": "subnet-6f950334",
              "us-west-2a": "subnet-fd54af9b"
          },
          "SecurityGroup": "sg-6cb2c216",
          "HsmType": "hsm2m.medium",
          "NetworkType": "IPV4",
          "Certificates": {},
          "State": "CREATE_IN_PROGRESS",
          "Hsms": [],
          "ClusterId": "cluster-igklspoyj5v",
          "ClusterMode": "FIPS",
          "CreateTimestamp": 1502423370.069
      }
  }
  ```
**nota**  
`ClusterMode` é um parâmetro obrigatório para todos os tipos de hsm, exceto hsm1.medium.`--mode`:  

  ```
  $ aws cloudhsmv2 create-cluster --hsm-type hsm2m.medium \
    				--backup-retention-policy Type=DAYS,Value=<number of days> \
    				--subnet-ids <subnet ID> \
  				--mode NON_FIPS
  ```

Se suas tentativas de criar um cluster falharem, isso pode estar relacionado a problemas com as funções AWS CloudHSM vinculadas ao serviço. Para obter ajuda para resolver essa falha, consulte [Resolvendo falhas na criação de AWS CloudHSM clusters](troubleshooting-create-cluster.md).

------
#### [ AWS CloudHSM API ]

**Para criar um cluster (AWS CloudHSM API)**
+ Envie uma solicitação [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateCluster.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateCluster.html). Especifique o tipo de instância do HSM, a política de retenção de backup e a sub-rede IDs das sub-redes em que você planeja criar. HSMs Use a sub-rede IDs das sub-redes privadas que você criou. Especifique apenas uma sub-rede por zona de disponibilidade.

Se suas tentativas de criar um cluster falharem, isso pode estar relacionado a problemas com as funções AWS CloudHSM vinculadas ao serviço. Para obter ajuda para resolver essa falha, consulte [Resolvendo falhas na criação de AWS CloudHSM clusters](troubleshooting-create-cluster.md).

------

# Analise o grupo de segurança do seu cluster no AWS CloudHSM
<a name="configure-sg"></a>

 Quando você cria um cluster ou adiciona um HSM a um cluster, AWS CloudHSM cria um grupo de segurança com o nome, `cloudhsm-cluster-<clusterID>-sg` caso ainda não exista. Esse grupo de segurança contém uma regra de TCP pré-configurada que permite a comunicação de entrada e de saída no grupo de segurança do cluster por meio das portas 2223-2225. Esse SG permite que suas instâncias do EC2 usem sua VPC para se comunicar em seu cluster. HSMs 

**Atenção**  
 Não exclua ou modifique a regra de TCP pré-configurada, que é preenchida no grupo de segurança do cluster. Essa regra pode evitar problemas de conectividade e acesso não autorizado ao seu HSMs. 
 O grupo de segurança do cluster impede o acesso não autorizado ao seu HSMs. Qualquer pessoa que possa acessar instâncias no grupo de segurança pode acessar seu HSMs. A maioria das operações exige que um usuário faça login no HSM. No entanto, é possível zerar HSMs sem autenticação, o que destrói o material da chave, os certificados e outros dados. Se isso acontecer, os dados criados ou modificados após o backup mais recente serão perdidos e não poderão ser recuperados. Para impedir o acesso não autorizado, certifique-se de que apenas os administradores confiáveis podem modificar ou acessar as instâncias no grupo de segurança padrão.  
 Os clusters hsm2m.medium introduzem o recurso mTLS para impedir que usuários não autorizados se conectem ao cluster. Usuários não autorizados precisarão de credenciais mTLS válidas para se conectarem com êxito ao cluster antes de tentarem a zeragem.

 Na próxima etapa, você pode [iniciar uma instância do Amazon EC2](launch-client-instance.md) e conectá-la à sua HSMs [anexando o grupo de segurança do cluster a](configure-sg-client-instance.md) ela.

# Inicie uma instância cliente do Amazon EC2 para interagir com AWS CloudHSM
<a name="launch-client-instance"></a>

 Para interagir e gerenciar seu AWS CloudHSM cluster e suas instâncias de HSM, você deve ser capaz de se comunicar com as interfaces de rede elástica de seus HSMs. A maneira mais fácil de fazer isso é usar uma instância do EC2 na mesma VPC do cluster. Use também os recursos da AWS a seguir para se conectar a seu cluster: 
+ [Emparelhamento do Amazon VPC](https://docs.aws.amazon.com/vpc/latest/peering/Welcome.html)
+ [Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html)
+ [Conexões VPN](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpn-connections.html)

**nota**  
Este guia fornece um exemplo simplificado de como conectar uma instância do EC2 ao seu AWS CloudHSM cluster. Para obter as práticas recomendadas sobre configurações de rede seguras, consulte [Acesso seguro ao cluster](bp-cluster-management.md#bp-secure-access).

 A AWS CloudHSM documentação normalmente presume que você está usando uma instância do EC2 na mesma VPC e zona de disponibilidade (AZ) em que você cria seu cluster. 

**Para criar uma instância do EC2**

1. Abra o **painel do EC2** em. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Selecione **Iniciar instância**. No menu suspenso, selecione **Iniciar instância**.

1. No campo **Nome**, insira um nome para a instância EC2. 

1. Na seção **Aplicativos e imagens OS (Amazon Machine Image)**, escolha uma imagem de máquina da Amazon (AMI) que corresponda a uma plataforma compatível com o CloudHSM. Para obter mais informações, consulte [AWS CloudHSM Plataformas compatíveis com o Client SDK 5](client-supported-platforms.md).

1. Na seção **Tipo de instância**, selecione o tipo de instância.

1. Na seção **Par de chaves**, use um par de chaves existente ou selecione **Criar novo par de chaves** e conclua as seguintes etapas:

   1. Em **Nome do par de chaves**, insira um nome para o novo par de chaves.

   1. Em **Par de chaves**, escolha um par de chaves.

   1. Para **Formato de arquivo de chave privada**, escolha o formato no qual salvar a chave privada.

   1. Selecione **Criar par de chaves**.

   1. Baixe e salve o arquivo de chave privada.
**Importante**  
Esta é sua única oportunidade de salvar o arquivo de chave privada. Baixe e armazene o arquivo em um lugar seguro. Você precisa fornecer o nome do par de chaves ao iniciar uma instância. Além disso, você deve fornecer a chave privada correspondente sempre que se conectar à instância e escolher o par de chaves que criou ao instalar.

1. Em **Configurações de rede**, selecione **Editar**.

1. Em **VPC**, escolha a VPC criada anteriormente para o cluster.

1. Em **Subnet (Sub-rede)**, selecione a sub-rede pública criada anteriormente para a VPC.

1. Para **Auto-assign Public IP (Atribuir IP público automaticamente)**, selecione **Permitir**.

1. Para **atribuição automática de IPv6 IP**, escolha **Habilitar** para usar a conectividade IPv6 com seus clusters e o Dual-Stack. NetworkType Se você habilitar essa opção, atualize as regras do grupo de segurança, as tabelas de rotas da VPC e da sub-rede e a rede da sua instância do Amazon EC2 ACLs para permitir o tráfego de IPv6 saída da instância para o. HSMs 

1. Escolha **Select an existing security group (Selecionar um grupo de segurança existente)**.

1. Em **Grupos de segurança comuns**, selecione o grupo de segurança padrão no menu suspenso.

1. Em **Configurar armazenamento**, use os menus suspensos para escolher uma configuração de armazenamento.

1. Na janela **Resumo**, selecione **Iniciar instância**.
**nota**  
A conclusão dessa etapa iniciará o processo de criação de sua instância do EC2.

Para obter mais informações sobre como criar um cliente do para Linux, consulte [Conceitos básicos das instâncias do Linux do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html). Para obter informações sobre como conectar-se ao cliente em execução, consulte os seguintes tópicos: 
+ [Conexão à sua instância do Linux utilizando SSH](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html)
+ [Conexão com a instância do Linux no Windows utilizando PuTTY](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html)

 O guia do usuário do Amazon EC2 contém instruções detalhadas para configurar e usar suas instâncias do Amazon EC2. A lista a seguir fornece uma visão geral da documentação disponível para clientes do Linux e do Windows Amazon EC2: 
+ Para criar um cliente do Amazon EC2 do Linux, consulte [Conceitos básicos das instâncias do Linux do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html).

  Para obter informações sobre como conectar-se ao cliente em execução, consulte os seguintes tópicos:
  + [Conexão à sua instância do Linux utilizando SSH](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AccessingInstancesLinux.html)
  + [Conexão com a instância do Linux no Windows utilizando PuTTY](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html)
+  Para criar um cliente do Amazon EC2 do Windows, consulte [Conceitos básicos de instâncias do Windows Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html). Para obter mais informações sobre como conectar-se a seu cliente do Windows, consulte [Conexão à sua instância do Windows](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EC2_GetStarted.html#ec2-connect-to-instance-windows). 

**nota**  
 Sua instância do EC2 pode executar todos os AWS CLI comandos contidos neste guia. Se a AWS CLI não estiver instalada, você poderá fazer download da [AWS Command Line Interface](https://aws.amazon.com/cli/). Se você estiver usando o Windows, poderá fazer download e executar um instalador do Windows de 64 bits ou de 32 bits. Se estiver usando o Linux ou o macOS, você poderá instalar a CLI usando o pip. 

# Configure os grupos de segurança da instância cliente Amazon EC2 para AWS CloudHSM
<a name="configure-sg-client-instance"></a>

Ao iniciar uma instância do Amazon EC2 para seu cluster em AWS CloudHSM, você a associou a um grupo de segurança padrão da Amazon VPC. Este tópico explica como associar o grupo de segurança do cluster à instância do EC2. Essa associação permite que o AWS CloudHSM cliente em execução na sua instância do EC2 se comunique com seus HSMs. Para conectar sua instância do EC2 ao seu AWS CloudHSM cluster, você deve configurar adequadamente o grupo de segurança padrão da VPC e associar o *grupo* de segurança do cluster à instância.

Siga as etapas a seguir para concluir as alterações na configuração.

**Topics**
+ [Etapa 1. Modificar o grupo de segurança padrão](#configure-sg-client-instance-modify-default-security-group)
+ [Etapa 2. Conecte a instância do Amazon EC2 ao cluster AWS CloudHSM](#configure-sg-client-instance-connect-the-ec2-instance-to-the-HSM-cluster)

## Etapa 1. Modificar o grupo de segurança padrão
<a name="configure-sg-client-instance-modify-default-security-group"></a>

Você precisa modificar o grupo de segurança padrão para permitir a conexão SSH ou RDP para que seja possível fazer download e instalar o software cliente e interagir com o HSM.

**Para modificar o grupo de segurança padrão**

1. Abra o **painel do EC2** em. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Selecione **Instâncias (em execução)** e, em seguida, marque a caixa de seleção ao lado da instância EC2 na qual você deseja instalar o AWS CloudHSM cliente.

1. Na guia **Segurança**, escolha o grupo de segurança chamado **Padrão**.

1. Na parte superior da página, escolha **Actions (Ações)** e depois **Edit inbound rules (Editar regras de entrada)**.

1. Selecione **Adicionar regra**.

1. Em **Type (Tipo)**, siga um destes procedimentos:
   + Para uma instância do Amazon EC2 do Windows Server, escolha **RDP**. A porta `3389` é preenchida automaticamente.
   + Para uma instância do Amazon EC2 do Linux, escolha **SSH**. O intervalo de portas `22` é preenchido automaticamente.

1. Para qualquer uma das opções, defina **Fonte** como **Meu IP** para permitir que você se comunique com sua instância do Amazon EC2.
**Importante**  
Não especifique 0.0.0.0/0 como o intervalo CIDR para evitar que qualquer pessoa acesse sua instância.

1. Escolha **Save (Salvar)**.

## Etapa 2. Conecte a instância do Amazon EC2 ao cluster AWS CloudHSM
<a name="configure-sg-client-instance-connect-the-ec2-instance-to-the-HSM-cluster"></a>

Você deve anexar o grupo de segurança do cluster à instância do EC2 para que a instância do EC2 possa se comunicar com HSMs seu cluster. O grupo de segurança do cluster contém uma regra pré-configurada que permite comunicação de entrada pelas portas 2223-2225.

**Para conectar a instância do EC2 ao cluster AWS CloudHSM**

1. Abra o **painel do EC2** em. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. Selecione **Instâncias (em execução)** e, em seguida, marque a caixa de seleção da instância EC2 na qual você deseja instalar o AWS CloudHSM cliente.

1. Na parte superior da página, escolha **Ações**, **Segurança** e depois **Alterar grupos de segurança**.

1. Selecione o grupo de segurança com o nome do grupo que corresponde ao ID do cluster, como `cloudhsm-cluster-<clusterID>-sg`.

1. Escolha **Adicionar grupos de segurança**.

1. Selecione **Save (Salvar)**.

**nota**  
 Você pode atribuir no máximo cinco grupos de segurança a uma instância do Amazon EC2. Se tiver atingido o limite máximo, você deverá modificar o grupo de segurança padrão da instância do Amazon EC2 e o grupo de segurança do cluster:  
No grupo de segurança padrão, faça o seguinte:  
Adicione uma regra de entrada para permitir tráfego usando o protocolo TCP por meio das portas `2223-2225` a partir do grupo de segurança do cluster.
No grupo de segurança do cluster, faça o seguinte:  
Adicione uma regra de entrada para permitir tráfego usando o protocolo TCP por meio das portas `2223-2225` do grupo de segurança padrão.

# Crie um HSM em AWS CloudHSM
<a name="create-hsm"></a>

 Depois de criar um cluster no AWS CloudHSM, você pode criar um módulo de segurança de hardware (HSM). No entanto, antes de criar um HSM no seu cluster, o cluster deve estar em um estado não inicializado. Para determinar o estado do cluster, visualize a [página de clusters no AWS CloudHSM console](https://console.aws.amazon.com/cloudhsm/home), use o AWS CLI para executar o **[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)** comando ou envie uma [DescribeClusters](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html)solicitação na AWS CloudHSM API. Você pode criar um HSM do [console do AWS CloudHSM](https://console.aws.amazon.com/cloudhsm/), a [AWS CLI](https://aws.amazon.com/cli/) ou a API do AWS CloudHSM . 

**Importante**  
 Crie apenas um HSM enquanto seu cluster estiver no estado não inicializado. 

------
#### [ Console ]

**Para criar um HSM (console)**

1. Abra o AWS CloudHSM console em [https://console.aws.amazon.com/cloudhsm/casa](https://console.aws.amazon.com/cloudhsm/home).

1. Selecione o botão de seleção ao lado do ID do cluster para o qual deseja criar um HSM.

1. Selecione **Ações**. No menu suspenso, escolha **Iniciar**.

1. Escolha uma zona de disponibilidade (AZ) para o HSM que está sendo criado.

1. Escolha **Criar**.

Depois de criar um cluster e um HSM, opcionalmente, é possível [verificar a identidade do HSM](verify-hsm-identity.md) ou ir diretamente para [Inicializar o cluster](initialize-cluster.md).

------
#### [ AWS CLI ]

**Para criar um HSM ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ Em um prompt de comando, execute o comando **[create-hsm](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/create-hsm.html)**. Especifique o ID do cluster criado anteriormente e uma zona de disponibilidade para o HSM. Especifique a zona de disponibilidade no formato `us-west-2a`, `us-west-2b` etc.

  ```
  $ aws cloudhsmv2 create-hsm --cluster-id <cluster ID> --availability-zone <Availability Zone>
  
  {
      "Hsm": {
          "HsmId": "hsm-ted36yp5b2x",
          "EniIp": "10.0.1.12",
          "EniIpV6": "2600:113f:404:be09:310e:ed34:3412:f733",
          "AvailabilityZone": "us-west-2a",
          "ClusterId": "cluster-igklspoyj5v",
          "EniId": "eni-5d7ade72",
          "SubnetId": "subnet-fd54af9b",
          "State": "CREATE_IN_PROGRESS"
      }
  }
  ```

Depois de criar um cluster e um HSM, opcionalmente, é possível [verificar a identidade do HSM](verify-hsm-identity.md) ou ir diretamente para [Inicializar o cluster](initialize-cluster.md).

------
#### [ AWS CloudHSM API ]

**Para criar um HSM (AWS CloudHSM API)**
+ Envie uma solicitação [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateHsm.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_CreateHsm.html). Especifique o ID do cluster criado anteriormente e uma zona de disponibilidade para o HSM. 

Depois de criar um cluster e um HSM, opcionalmente, é possível [verificar a identidade do HSM](verify-hsm-identity.md) ou ir diretamente para [Inicializar o cluster](initialize-cluster.md).

------

# Verifique a identidade e a autenticidade do HSM do seu cluster em AWS CloudHSM (opcional)
<a name="verify-hsm-identity"></a>

Para inicializar seu cluster AWS CloudHSM, você assina uma solicitação de assinatura de certificado (CSR) gerada pelo primeiro módulo de segurança de hardware (HSM) do cluster. Antes de fazer isso, você pode verificar a identidade e a autenticidade do HSM. 

**nota**  
Este processo é opcional. No entanto, ele funciona apenas até que um cluster seja inicializado. Depois que o cluster for inicializado, você não poderá usar esse processo para obter os certificados ou verificar o. HSMs

Para verificar a identidade do primeiro HSM do cluster, execute as seguintes etapas:

1. [Obter os certificados e CSR ](#get-certificates): nesta etapa, são obtidos três certificados e uma CSR no HSM. Você também recebe dois certificados raiz, um do fabricante do hardware do HSM AWS CloudHSM e outro.

1. [Verifique as cadeias de certificados](#verify-certificate-chains) — Nesta etapa, você constrói duas cadeias de certificados, uma para o certificado AWS CloudHSM raiz e outra para o certificado raiz do fabricante. Em seguida, você verifica o certificado do HSM com essas cadeias de certificados para determinar isso AWS CloudHSM e o fabricante do hardware atesta a identidade e a autenticidade do HSM.

1. [Comparar chaves públicas](#compare-public-keys): nesta etapa, as chaves públicas são extraídas e comparadas com as chaves públicas no certificado do HSM e na CSR do cluster, para garantir que são iguais. Isso deve fornecer a confiança de que o CSR foi gerado por um HSM autêntico e confiável.

O diagrama a seguir mostra a CSR, os certificados e a relação entre eles. Cada certificado é definido pela lista subsequente.

![\[Os certificados do HSM e seus relacionamentos.\]](http://docs.aws.amazon.com/pt_br/cloudhsm/latest/userguide/images/hsm-certificate-relationships.png)


**AWS Certificado raiz**  
Esse é AWS CloudHSM o certificado raiz. 

**Certificado raiz do fabricante**  
Este é o certificado raiz do fabricante de hardware. 

**AWS Certificado de hardware**  
AWS CloudHSM criou esse certificado quando o hardware do HSM foi adicionado à frota. Esse certificado afirma que AWS CloudHSM é proprietário do hardware.

**Certificado de hardware do fabricante**  
O fabricante de hardware do HSM criou esse certificado quando o hardware do HSM foi fabricado. Esse certificado garante que o fabricante criou o hardware.

**Certificado HSM**  
O certificado do HSM é gerado pelo hardware validado pelo FIPS quando você cria o primeiro HSM no cluster. Esse certificado garante que o hardware do HSM criou o HSM.

**CSR do cluster**  
O primeiro HSM cria a CSR do cluster. Ao [assinar a CSR do cluster](initialize-cluster.md#sign-csr), você reivindica o cluster. Em seguida, você pode usar a CSR assinada para [inicializar o cluster](initialize-cluster.md#initialize).

## Etapa 1. Obter certificados do HSM
<a name="get-certificates"></a>

Para verificar a identidade e a autenticidade do HSM, começar obtendo um CSR e cinco certificados. Você recebe três dos certificados do HSM, o que pode ser feito com o [AWS CloudHSM console](https://console.aws.amazon.com/cloudhsm/), o [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/) ou a AWS CloudHSM API.

------
#### [ Console ]

**Para obter a CSR e certificados de HSM (console)**

1. Abra o AWS CloudHSM console em [https://console.aws.amazon.com/cloudhsm/casa](https://console.aws.amazon.com/cloudhsm/home).

1. Selecione o botão de seleção ao lado do ID do cluster com o HSM que deseja verificar.

1. Selecione **Ações**. No menu suspenso, escolha **Iniciar**.

1. Se você não concluiu a [etapa anterior](create-hsm.md) para criar um HSM, escolha uma Zona de Disponibilidade (AZ) para o HSM que você está criando. Em seguida, selecione **Criar**.

1. Quando os certificados e a CSR estiverem prontos, você verá links para fazer o download.  
![\[A página de solicitação de assinatura do certificado de download no AWS CloudHSM console.\]](http://docs.aws.amazon.com/pt_br/cloudhsm/latest/userguide/images/download-csr-hsm-cert.png)

1. Escolha cada link para fazer download e salvar a CSR e seus certificados. Para simplificar as etapas subsequentes, salve todos os arquivos no mesmo diretório e use os nomes de arquivo padrão. 

------
#### [ AWS CLI ]

**Para obter a CSR e os certificados HSM ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ No prompt de comando, execute o comando **[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)** quatro vezes, extraindo o CSR e certificados diferentes cada vez e salvando-os em arquivos.

  1. Emita o seguinte comando para extrair a CSR do cluster. *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.ClusterCsr' \
                                        > <cluster ID>_ClusterCsr.csr
     ```

  1. Emita o seguinte comando para extrair o certificado do HSM. *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.HsmCertificate' \
                                        > <cluster ID>_HsmCertificate.crt
     ```

  1. Execute o comando a seguir para extrair o certificado AWS de hardware. *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.AwsHardwareCertificate' \
                                        > <cluster ID>_AwsHardwareCertificate.crt
     ```

  1. Emita o seguinte comando para extrair o certificado de hardware do fabricante. *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente.

     ```
     $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                        --output text \
                                        --query 'Clusters[].Certificates.ManufacturerHardwareCertificate' \
                                        > <cluster ID>_ManufacturerHardwareCertificate.crt
     ```

------
#### [ AWS CloudHSM API ]

**Para obter os certificados CSR e HSM (API)AWS CloudHSM**
+ Envie uma solicitação [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html) e, em seguida, extraia e salve a CSR e os certificados da resposta.

------

## Etapa 2. Obter certificados raiz
<a name="get-root-certificates"></a>

Siga estas etapas para obter os certificados raiz AWS CloudHSM e o fabricante. Salve os arquivos de certificado raiz no diretório que contém os arquivos CSR e de certificado da HSM.

**Para obter os certificados raiz AWS CloudHSM e do fabricante**

1. Baixe o certificado AWS CloudHSM raiz: [AWS\$1CloudHSM\$1Root-G1.zip](samples/AWS_CloudHSM_Root-G1.zip)

1. Faça download do certificado raiz do fabricante certo para seu tipo de HSM:
   + Certificado raiz do fabricante do hsm1.medium: [liquid\$1security\$1certificate.zip](https://www.marvell.com/content/dam/marvell/en/public-collateral/security-solutions/liquid_security_certificate.zip)
   + Certificado raiz do fabricante do hsm2.medium: [liquid\$1security\$1certificate.zip](https://www.marvell.com/content/dam/marvell/en/public-collateral/security-solutions/liquidsecurity2_ar_v1.zip)
**nota**  
Para fazer download de cada certificado da respectiva página inicial, use os links a seguir:  
Página inicial do [certificado raiz do fabricante](https://www.marvell.com/products/security-solutions/liquid-security-hsm-adapters-and-appliances/liquidsecurity-certificate.html) da instância hsm1.medium
Página inicial do [certificado raiz do fabricante](https://www.marvell.com/products/security-solutions/nitrox-hs-adapters/liquidsecurity2-certificate-ls2-g-axxx-ar-f-bo-v1.html) da instância hsm2m.medium
Talvez seja necessário clicar no link de **Fazer download de certificado** e escolher **Salvar Link como...** a seguir, para salvar o arquivo do certificado.

1. Depois de fazer o download dos arquivos, extraia (descompacte) seu conteúdo.

## Etapa 3. Verificar cadeias de certificados
<a name="verify-certificate-chains"></a>

Nesta etapa, você constrói duas cadeias de certificados, uma para o certificado AWS CloudHSM raiz e outra para o certificado raiz do fabricante. Em seguida, use OpenSSL para verificar o certificado de HSM com cada cadeia de certificado.

Para criar as cadeias de certificados, abra um shell do Linux. Você precisa do OpenSSL, que está disponível na maioria dos shells do Linux e precisa do [certificado raiz](#get-root-certificates) e dos [arquivos de certificado do HSM](#get-certificates) que foram transferidos por download. No entanto, você não precisa do AWS CLI para esta etapa e o shell não precisa estar associado à sua AWS conta.

**Para verificar o certificado HSM com o certificado AWS CloudHSM raiz**

1. Navegue até o diretório onde você salvou o [certificado raiz](#get-root-certificates) e os [arquivos de certificado do HSM](#get-certificates) que foram transferidos por download. Os comandos a seguir assumem que todos os certificados estejam no diretório atual e usam os nomes de arquivo padrão. 

   Use o comando a seguir para criar uma cadeia de certificados que inclua o certificado de AWS hardware e o certificado AWS CloudHSM raiz, nessa ordem. *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente. 

   ```
   $ cat <cluster ID>_AwsHardwareCertificate.crt \
         AWS_CloudHSM_Root-G1.crt \
         > <cluster ID>_AWS_chain.crt
   ```

1. Use o comando OpenSSL a seguir para verificar o certificado de HSM com a cadeia de certificação da AWS . *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente.

   ```
   $ openssl verify -CAfile <cluster ID>_AWS_chain.crt <cluster ID>_HsmCertificate.crt
   <cluster ID>_HsmCertificate.crt: OK
   ```

**Para verificar o certificado de HSM com o certificado raiz do fabricante**

1. Use o comando a seguir para criar uma cadeia de certificado que inclua o certificado de hardware do fabricante e o certificado raiz do fabricante, nesta ordem. *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente.

   ```
   $ cat <cluster ID>_ManufacturerHardwareCertificate.crt \
         liquid_security_certificate.crt \
         > <cluster ID>_manufacturer_chain.crt
   ```

1. Use o comando OpenSSL a seguir para verificar o certificado do HSM com a cadeia de certificados do fabricante. *<cluster ID>*Substitua pelo ID do cluster que você criou anteriormente.

   ```
   $ openssl verify -CAfile <cluster ID>_manufacturer_chain.crt <cluster ID>_HsmCertificate.crt
   <cluster ID>_HsmCertificate.crt: OK
   ```

## Etapa 4: Extrair e comparar chaves públicas
<a name="compare-public-keys"></a>

Use OpenSSL para extrair e comparar chaves públicas no certificado do HSM e na CSR do cluster, a fim de garantir que são iguais.

Para comparar as chaves públicas, use o shell do Linux. Você precisa do OpenSSL, que está disponível na maioria dos shells Linux, mas não é necessário AWS CLI para esta etapa. O shell não precisa estar associado à sua AWS conta.

**Para extrair e comparar as chaves públicas**

1. Use o comando a seguir para extrair a chave pública do certificado de HSM.

   ```
   $ openssl x509 -in <cluster ID>_HsmCertificate.crt -pubkey -noout > <cluster ID>_HsmCertificate.pub
   ```

1. Use o comando a seguir para extrair a chave pública da CSR do cluster.

   ```
   $ openssl req -in <cluster ID>_ClusterCsr.csr -pubkey -noout > <cluster ID>_ClusterCsr.pub
   ```

1. Use o comando a seguir para comparar as chaves públicas. Se as chaves públicas forem idênticas, o comando a seguir não produzirá resultado.

   ```
   $ diff <cluster ID>_HsmCertificate.pub <cluster ID>_ClusterCsr.pub
   ```

Depois de verificar a identidade e a autenticidade do HSM, vá para [Inicializar o cluster](initialize-cluster.md).

# Inicialize o cluster em AWS CloudHSM
<a name="initialize-cluster"></a>

Depois de criar seu cluster e adicionar seu módulo de segurança de hardware (HSM) AWS CloudHSM, você pode inicializar o cluster. Conclua as etapas dos tópicos a seguir para inicializar o cluster do .

**nota**  
Antes de inicializar o cluster, revise o processo pelo qual você pode [verificar a identidade e a autenticidade do. HSMs](verify-hsm-identity.md) Esse processo é opcional e funciona apenas até que um cluster seja inicializado. Depois que o cluster for inicializado, você não poderá usar esse processo para obter seus certificados ou verificar o. HSMs 

**Topics**
+ [Visão geral do](#initialize-cluster-overview)
+ [Etapa 1. Obter a Solicitação de assinatura de certificado (CSR) do cluster](#get-csr)
+ [Etapa 2. Crie uma chave privada para sua CA raiz](#sign-csr-create-key)
+ [Etapa 3. Assinar a CSR](#sign-csr)
+ [Etapa 4: Inicializar o cluster](#initialize)

## Visão geral do
<a name="initialize-cluster-overview"></a>

 O processo de inicialização do cluster estabelece sua propriedade e controle sobre o cluster e sobre você HSMs por meio de um sistema de autenticação baseado em certificado. Esse processo prova criptograficamente que você é o único proprietário do HSMs em seu cluster e cria a base de confiança que será necessária para todas as conexões futuras com o seu. HSMs 

 Esta página mostrará como fazer o seguinte: 
+ Recupere a solicitação de assinatura de certificado (CSR) do seu cluster.
+ Gere e use a (s) chave (s) privada (s) para criar um certificado raiz autoassinado ou uma cadeia de certificados.
+ Assine a CSR do seu cluster para produzir um certificado HSM assinado.
+ Inicialize seu cluster usando o certificado HSM assinado e o certificado autoassinado ou a cadeia de certificados.

Quando estiver pronto para começar, vá para [Etapa 1. Obter a Solicitação de assinatura de certificado (CSR) do cluster](#get-csr).

## Etapa 1. Obter a Solicitação de assinatura de certificado (CSR) do cluster
<a name="get-csr"></a>

Antes de inicializar o cluster, é necessário baixar e assinar uma solicitação de assinatura de certificado (CSR) gerada pelo primeiro HSM do cluster. Se tiver seguido as etapas para [verificar a identidade do HSM do cluster](verify-hsm-identity.md), você já deverá ter a CSR e poderá assiná-la. Caso contrário, obtenha a CSR agora usando o [AWS CloudHSM console](https://console.aws.amazon.com/cloudhsm/), o [AWS Command Line Interface (AWS CLI)](https://aws.amazon.com/cli/) ou a AWS CloudHSM API. 

------
#### [ Console ]

**Para obter a CSR (console)**

1. Abra o AWS CloudHSM console em [https://console.aws.amazon.com/cloudhsm/casa](https://console.aws.amazon.com/cloudhsm/home).

1. Selecione o botão de seleção ao lado do ID do cluster com o HSM que deseja verificar.

1. Selecione **Ações**. No menu suspenso, escolha **Iniciar**.

1. Se você não concluiu a [etapa anterior](create-hsm.md) para criar um HSM, escolha uma Zona de Disponibilidade (AZ) para o HSM que você está criando. Em seguida, selecione **Criar**.

1. Quando a CSR estiver pronta, você verá um link para fazer o download.  
![\[Baixe a página de solicitação de assinatura de certificado no AWS CloudHSM console.\]](http://docs.aws.amazon.com/pt_br/cloudhsm/latest/userguide/images/download-csr-hsm-cert.png)

1. Selecione **Cluster CSR** para fazer o download e salvar a CSR.

------
#### [ AWS CLI ]

**Para obter a CSR ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ No prompt de comando, execute o seguinte comando **[describe-clusters](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/describe-clusters.html)**, que extrai a CSR e a salva em um arquivo. *<cluster ID>*Substitua pelo ID do cluster que você [criou anteriormente](create-cluster.md). 

  ```
  $ aws cloudhsmv2 describe-clusters --filters clusterIds=<cluster ID> \
                                     --output text \
                                     --query 'Clusters[].Certificates.ClusterCsr' \
                                     > <cluster ID>_ClusterCsr.csr
  ```

------
#### [ AWS CloudHSM API ]

**Para obter o CSR (AWS CloudHSM API)**

1. Envie uma solicitação [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_DescribeClusters.html).

1. Extraia e salve a CSR da resposta.

------

## Etapa 2. Crie uma chave privada para sua CA raiz
<a name="sign-csr-create-key"></a>

**nota**  
Para um cluster de produção, a chave deve ser criada com segurança usando uma fonte confiável de aleatoriedade. Recomendamos que você use um HSM fora do local e off-line ou o equivalente. Armazene a chave com segurança. A chave estabelece a identidade do cluster e seu controle exclusivo sobre o HSMs que ele contém.  
Durante a fase de desenvolvimento e teste, você pode usar qualquer ferramenta conveniente (como o OpenSSL) para criar e assinar o certificado do cluster. O exemplo a seguir mostra como criar uma chave. Após usar a chave para criar um certificado autoassinado (veja abaixo), você deve armazená-la com segurança. Para entrar na sua AWS CloudHSM instância, o certificado precisa estar presente, mas a chave privada não.

A tabela abaixo descreve os algoritmos, tamanhos de chave e curvas compatíveis para a geração de certificados.


| Algoritmos | Tamanho/Curvas | 
| --- | --- | 
| **RSA 5 PKCSv1.** |  2048, 3072, 4096  | 
| **RSA-PSS** |  2048, 3072, 4096  | 
| **ECDSA** |  prime256v1, secp384r1, secp521r1  | 
| **Resumo** |  SHA-224, SHA-256, SHA-384 e SHA-512  | 

Use o comando de exemplo a seguir para criar uma chave privada para sua CA raiz autoassinada.

```
$ openssl genrsa -aes256 -out customerRootCA.key 2048
Generating RSA private key, 2048 bit long modulus
........+++
............+++
e is 65537 (0x10001)
Enter pass phrase for customerRootCA.key:
Verifying - Enter pass phrase for customerRootCA.key:
```

## Etapa 3. Assinar a CSR
<a name="sign-csr"></a>

Nas etapas anteriores, você recuperou a CSR do seu cluster e criou uma chave privada para sua CA raiz. Nesta etapa, você usará sua chave privada para gerar um certificado de assinatura para assinar a CSR do seu cluster. Os tópicos abaixo guiarão você pelo processo de criação de um único certificado autoassinado, ou uma cadeia de certificados, usando o OpenSSL. Você não precisa do AWS CLI para esta etapa e o shell não precisa estar associado à sua AWS conta. 

**Importante**  
Para inicializar seu cluster, sua âncora de confiança deve estar em conformidade com a [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280) e atender aos seguintes requisitos:   
Se estiver usando extensões X509v3, a extensão X509v3 Basic Constraints deve estar presente.
A âncora de confiança deve ser um certificado autoassinado.
Os valores de extensão não devem entrar em conflito uns com os outros.

Escolha uma das seguintes abordagens para assinar a CSR do seu cluster:

### Escolha sua abordagem de certificação
<a name="certificate-approach-choice"></a>

Você deve escolher uma das duas abordagens a seguir. Não conclua as duas abordagens.

**Opção A: certificado autoassinado único**  
Crie um único certificado raiz autoassinado para assinar a CSR do seu cluster. Esse é o método mais simples e direto de estabelecer confiança.  
**Recomendado para:**  
+ Ambientes em que uma PKI externa não é necessária
+ Ambientes de teste e desenvolvimento em que a simplicidade é preferida
Vá para: [Crie um único certificado autoassinado](#self-signed-certificate)

**Opção B: cadeia de certificados com CA intermediária**  
Crie uma cadeia de certificados usando uma autoridade de certificação intermediária. Uma cadeia de certificados intermediária fornece segurança, escalabilidade e flexibilidade aprimoradas, permitindo que as Autoridades de Certificação raiz (CAs) permaneçam off-line enquanto delegam a emissão do certificado ao intermediário CAs, reduzindo assim o risco de comprometer a CA raiz.  
**Recomendado para:**  
+ Ambientes em que uma PKI externa é necessária
+ Integração com a Autoridade de Certificação Privada (PCA) da AWS
**Exemplo de integração com o AWS PCA:** você pode usar a Autoridade de Certificação AWS Privada para criar e gerenciar seus certificados CA intermediários. Isso fornece gerenciamento automatizado do ciclo de vida do certificado, incluindo renovação e revogação, enquanto mantém os benefícios de segurança de manter sua CA raiz offline. Para obter mais informações sobre o AWS PCA, consulte o [Guia do usuário da Autoridade de Certificação Privada da AWS](https://docs.aws.amazon.com/privateca/latest/userguide/PcaWelcome.html).  
Vá para: [Crie uma cadeia de autoridade de certificação intermediária (ICA)](#certificate-chain)

### Crie um único certificado autoassinado
<a name="self-signed-certificate"></a>

O hardware confiável que você usa para criar a chave privada para seu cluster de produção também deve fornecer uma ferramenta de software para gerar um certificado autoassinado usando essa chave. O exemplo a seguir usa o OpenSSL e a chave privada que você criou na etapa anterior para criar um certificado de assinatura de CA raiz autoassinado. O certificado é válido por 10 anos (3652 dias). Leia as instruções na tela e siga os avisos. 

```
$ openssl req -new -x509 -days 3652 -key customerRootCA.key -out customerRootCA.crt
Enter pass phrase for customerRootCA.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

Este comando cria um arquivo de certificado nomeado `customerRootCA.crt`. Coloque esse certificado em cada host a partir do qual você se conectará ao seu AWS CloudHSM cluster. Se você der um nome diferente ao arquivo ou armazená-lo em um caminho diferente da raiz do host, edite o arquivo de configuração do cliente adequadamente. Use o certificado e a chave privada que você acabou de criar para assinar a solicitação de assinatura de certificado (CSR) do cluster na próxima etapa. 

#### Assine o CSR do cluster com sua CA raiz autoassinada
<a name="sign-csr-sign-cluster-csr-with-root-ca"></a>

O hardware confiável que você usa para criar a chave privada do cluster de produção também deve fornecer uma ferramenta para assinar a CSR por meio dessa chave. O exemplo a seguir usa o OpenSSL para assinar a CSR do cluster. O comando de exemplo abaixo assina o CSR com o autoassinado `customerRootCA.crt`

```
$ openssl x509 -req -days 3652 -in <cluster ID>_ClusterCsr.csr \
		-CA <customerRootCA>.crt \
		-CAkey <customerRootCA>.key \
		-CAcreateserial \
		-out <cluster ID>_CustomerHsmCertificate.crt
Signature ok
subject=/C=US/ST=CA/O=Cavium/OU=N3FIPS/L=SanJose/CN=HSM:<HSM identifier>:PARTN:<partition number>, for FIPS mode
Getting CA Private Key
Enter pass phrase for <customerRootCA>.key:
```

Este comando cria um arquivo chamado `<cluster ID>_CustomerHsmCertificate.crt`. Use este arquivo como o certificado assinado ao inicializar o cluster. 

Verifique o certificado assinado em relação à CA raiz (opcional):

```
$ openssl verify -purpose sslserver -CAfile customerRootCA.crt <cluster ID>_CustomerHsmCertificate.crt
<cluster ID>_CustomerHsmCertificate.crt: OK
```

Depois de produzir o certificado HSM assinado com sua CA raiz autoassinada, acesse. [Etapa 4: Inicializar o cluster](#initialize)

### Crie uma cadeia de autoridade de certificação intermediária (ICA)
<a name="certificate-chain"></a>

Os exemplos a seguir ajudarão você a criar uma cadeia de certificados de comprimento 2, consistindo em uma Autoridade Certificadora (CA) raiz e uma CA intermediária. Primeiro, você criará um certificado de CA raiz autoassinado e, em seguida, gerará uma CA intermediária assinada pela CA raiz. Por fim, você usará a CA intermediária para assinar a CSR do seu cluster, criando uma cadeia de confiança completa do seu certificado HSM até a CA raiz. Essa abordagem fornece segurança aprimorada ao manter a CA raiz off-line enquanto usa a CA intermediária para operações de day-to-day certificado.

**Importante**  
Para inicializar seu cluster com uma cadeia de certificados, sua cadeia deve atender aos seguintes requisitos:   
A cadeia deve ser solicitada, começando com a CA intermediária que assina a CSR do cluster. Nessa ordem, o primeiro ICA deve ter um emissor que corresponda ao assunto do próximo ICA na cadeia, e assim por diante.
Somente a CA raiz deve ser autoassinada, o que significa que o emissor e o assunto devem ser idênticos.
A cadeia deve consistir em no máximo 4 certificados (incluindo a CA raiz no final) e o tamanho total da cadeia não deve exceder 16 kb (kilobytes).
Todas as autoridades de certificação (CAs) devem estar em conformidade com as diretrizes da [RFC 5280](https://datatracker.ietf.org/doc/html/rfc5280).

Esta seção fornece exemplos para criar uma cadeia de autoridade de certificação intermediária usando duas abordagens diferentes: OpenSSL para geração de certificados locais e AWS Private Certificate Authority (PCA) para serviços gerenciados de certificados. Escolha a abordagem que melhor se adequa ao seu ambiente e aos requisitos de segurança.

**nota**  
Os exemplos a seguir são casos de uso gerais e ambos são simplificados, usando a configuração mais básica. Para ambientes de produção, revise as opções adicionais de configuração e os requisitos de segurança específicos para seu caso de uso.

------
#### [ OpenSSL ]

Crie um arquivo de configuração do OpenSSL com extensões v3 comuns para CA:

```
$ cat > ca-extensions.conf <<EOF
[req]
distinguished_name = req_distinguished_name
[req_distinguished_name]
C = Country Name (2 letter code)
ST = State or Province Name (full name)
L = Locality Name (eg, city)
O = Organization Name (eg, company)
OU = Organizational Unit Name (eg, section)
CN = Common Name (e.g. server FQDN or YOUR name)
[v3_ca]
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid:always,issuer
basicConstraints = critical,CA:true
keyUsage = critical, keyCertSign, cRLSign, digitalSignature
EOF
```

Gere uma CA raiz autoassinada usando o OpenSSL:

```
$ openssl req -new -x509 -days 3652 -key customerRootCA.key -out customerRootCA.crt -extensions v3_ca -config ca-extensions.conf
Enter pass phrase for customerRootCA.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

Gere uma chave CA intermediária:

```
$ openssl genrsa -aes256 -out intermediateCA.key 2048
Generating RSA private key, 2048 bit long modulus
........+++
............+++
e is 65537 (0x10001)
Enter pass phrase for intermediateCA.key:
Verifying - Enter pass phrase for intermediateCA.key:
```

Crie a solicitação intermediária de assinatura de certificado CA (CSR):

```
$ openssl req -new -key intermediateCA.key -out intermediateCA.csr
Enter pass phrase for intermediateCA.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

Usando a CA raiz autoassinada, crie o certificado CA intermediário:

```
$ openssl x509 -req -in intermediateCA.csr \
		-CA customerRootCA.crt \
		-CAkey customerRootCA.key \
		-CAcreateserial \
		-days 3652 \
		-extensions v3_ca \
		-extfile ca-extensions.conf \
		-out intermediateCA.crt

Certificate request self-signature ok
subject=C= , ST= , L= , O= , OU=
```

Combine os certificados em um arquivo em cadeia:

```
$ cat intermediateCA.crt customerRootCA.crt > chainCA.crt

-----BEGIN CERTIFICATE-----
[Intermediate CA]
-----END CERTIFICATE-----
...
...
-----BEGIN CERTIFICATE-----
[Root CA]
-----END CERTIFICATE-----
```

Assine o CSR do cluster com sua CA intermediária:

```
$ openssl x509 -req -days 3652 -in <cluster ID>_ClusterCsr.csr \
			-CA intermediateCA.crt \
			-CAkey intermediateCA.key \
			-CAcreateserial \
			-out <cluster ID>_CustomerHsmCertificate.crt
Signature ok
subject=/C=US/ST=CA/O=Cavium/OU=N3FIPS/L=SanJose/CN=HSM:<HSM identifier>:PARTN:<partition number>, for FIPS mode
Getting CA Private Key
Enter pass phrase for intermediateCA.key:
```

------
#### [ AWS PCA ]

Crie e ative uma CA raiz usando a Autoridade de Certificação Privada da AWS:

```
$ # 1. Create Root CA
aws acm-pca create-certificate-authority \
    --certificate-authority-configuration \
        "KeyAlgorithm=RSA_4096,
        SigningAlgorithm=SHA256WITHRSA,
        Subject={Country=US,Organization=MyOrg,OrganizationalUnit=IT,CommonName=RootCA}" \
    --certificate-authority-type ROOT

# Store the Root CA Authority ARN from the previous output
ROOT_CA_AUTHORITY_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<ca-authority-id>"

# 2. Generate Root CA CSR
aws acm-pca get-certificate-authority-csr \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --output text > customerRootCA.csr

# 3. Self-sign Root CA Certificate
aws acm-pca issue-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --csr fileb://customerRootCA.csr \
    --signing-algorithm SHA256WITHRSA \
	--template-arn arn:aws:acm-pca:::template/RootCACertificate/V1 \
    --validity Value=3652,Type=DAYS

# Store the Root CA certificate ARN from the previous output
ROOT_CA_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<ca-authority-id>/certificate/<cert-id>"

# 4. Retrieve the Root CA certificate
aws acm-pca get-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --certificate-arn $ROOT_CA_ARN \
    --output text > customerRootCA.crt

# 5. Import the Root CA Certificate
aws acm-pca import-certificate-authority-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --certificate fileb://customerRootCA.crt
```

Crie e ative uma CA subordinada (também conhecida como CA intermediária):

```
$ # 6. Create Subordinate CA
aws acm-pca create-certificate-authority \
    --certificate-authority-configuration \
        "KeyAlgorithm=RSA_4096,
        SigningAlgorithm=SHA256WITHRSA,
        Subject={Country=US,Organization=MyOrg,OrganizationalUnit=IT,CommonName=SubordinateCA}" \
    --certificate-authority-type SUBORDINATE

# Store the Subordinate CA Authority ARN from the previous output
SUB_CA_AUTHORITY_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<sub-ca-authority-id>"

# 7. Generate Subordinate CA CSR
aws acm-pca get-certificate-authority-csr \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --output text > intermediateCA.csr

# 8. Issue Subordinate CA Certificate using Root CA
aws acm-pca issue-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --csr fileb://intermediateCA.csr \
    --signing-algorithm SHA256WITHRSA \
    --template-arn arn:aws:acm-pca:::template/SubordinateCACertificate_PathLen0/V1 \
    --validity Value=3651,Type=DAYS

# Store the Subordinate CA certificate ARN from the previous output
SUB_CA_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<sub-ca-authority-id>"

# 9. Retrieve Subordinate CA Certificate
aws acm-pca get-certificate \
    --certificate-authority-arn $ROOT_CA_AUTHORITY_ARN \
    --certificate-arn $SUB_CA_ARN \
    --query 'Certificate' \
    --output text > intermediateCA.crt

# 10. Import the Subordinate CA Certificate
aws acm-pca import-certificate-authority-certificate \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --certificate fileb://intermediateCA.crt \
    --certificate-chain fileb://customerRootCA.crt
```

Combine os certificados em um arquivo em cadeia:

```
$ cat intermediateCA.crt customerRootCA.crt > chainCA.crt

-----BEGIN CERTIFICATE-----
[Intermediate CA]
-----END CERTIFICATE-----
...
...
-----BEGIN CERTIFICATE-----
[Root CA]
-----END CERTIFICATE-----
```

Assine o CSR do cluster usando o AWS PCA:

```
$ aws acm-pca issue-certificate \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --csr fileb://<cluster ID>_ClusterCsr.csr \
    --signing-algorithm SHA256WITHRSA \
    --template-arn arn:aws:acm-pca:::template/EndEntityCertificate/V1 \
    --validity Value=3650,Type=DAYS

# Store your cluster's cert ARN from the previous output
CLUSTER_CERT_ARN="arn:aws:acm-pca:<region>:<account-id>:certificate-authority/<cluster-cert-arn>"
```

Baixe o certificado de cluster assinado:

```
$ aws acm-pca get-certificate \
    --certificate-authority-arn $SUB_CA_AUTHORITY_ARN \
    --certificate-arn $CLUSTER_CERT_ARN \
    --output text --query Certificate > <cluster ID>_CustomerHsmCertificate.crt
```

------

Este comando cria um arquivo chamado `<cluster ID>_CustomerHsmCertificate.crt`. Use este arquivo como o certificado assinado ao inicializar o cluster. 

Verifique o certificado assinado em relação à cadeia de certificados (opcional):

```
$ openssl verify -purpose sslserver -CAfile chainCA.crt <cluster ID>_CustomerHsmCertificate.crt
<cluster ID>_CustomerHsmCertificate.crt: OK
```

Depois de produzir o certificado HSM assinado com sua CA intermediária, acesse[Etapa 4: Inicializar o cluster](#initialize).

## Etapa 4: Inicializar o cluster
<a name="initialize"></a>

Use o certificado assinado do HSM e o certificado de assinatura para inicializar o cluster. Você pode usar o [AWS CloudHSM console [AWS CLI](https://aws.amazon.com/cli/)](https://console.aws.amazon.com/cloudhsm/), o ou a AWS CloudHSM API. 

------
#### [ Console ]

**Para inicializar um cluster (console)**

1. Abra o AWS CloudHSM console em [https://console.aws.amazon.com/cloudhsm/casa](https://console.aws.amazon.com/cloudhsm/home).

1. Selecione o botão de seleção ao lado do ID do cluster com o HSM que deseja verificar.

1. Selecione **Ações**. No menu suspenso, escolha **Iniciar**.

1. Se você não concluiu a [etapa anterior](create-hsm.md) para criar um HSM, escolha uma Zona de Disponibilidade (AZ) para o HSM que você está criando. Em seguida, selecione **Criar**.

1. Na página **Download certificate signing request (Solicitação de assinatura de certificado de download)**, escolha **Next (Próximo)**. Se a opção **Next (Próximo)** não estiver disponível, selecione primeiro um dos links de certificado ou de CSR. Em seguida, escolha **Next (Próximo)**.

1. Na página de **Download certificate signing request [Solicitação assinatura de certificado (CSR)]**, selecione **Next (Próximo)**.

1. Na página **Upload the certificates (Carregar os certificados)**, faça o seguinte:

   1. Ao lado de **Cluster certificate (Certificado de cluster)**selecione **Upload file (Carregar arquivo)**. Em seguida, localize e selecione o certificado do HSM assinado anteriormente. Se tiver executado as etapas na seção anterior, selecione o arquivo denominado `<cluster ID>_CustomerHsmCertificate.crt`.

   1. Ao lado de **Issuing certificate (Certificado de emissão)**selecione **Upload file (Carregar arquivo)**. Em seguida, selecione seu certificado de assinatura com base na abordagem escolhida:
      + **Se você escolheu a Opção A (certificado autoassinado único):** selecione o arquivo chamado `<customerRootCA>.crt`
      + **Se você escolheu a Opção B (cadeia de certificados):** Selecione o arquivo chamado `<chainCA>.crt`

   1. Selecione **Upload and initialize (Carregar e inicializar)**.

------
#### [ AWS CLI ]

**Para inicializar um cluster ([AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/))**
+ Em um prompt de comando, execute o comando **[initialize-cluster](https://docs.aws.amazon.com/cli/latest/reference/cloudhsmv2/initialize-cluster.html)**. Forneça o seguinte: 
  + O ID do cluster que foi criado anteriormente.
  + O certificado de HSM que foi assinado anteriormente. Se tiver executado as etapas na seção anterior, ele foi salvo em um arquivo denominado `<cluster ID>_CustomerHsmCertificate.crt`. 
  + Seu certificado de assinatura com base na abordagem que você escolheu:
    + **Se você escolheu a Opção A (certificado autoassinado único):** use o arquivo chamado `<customerRootCA>.crt`
    + **Se você escolheu a Opção B (cadeia de certificados):** Use o arquivo chamado `<chainCA>.crt`

  ```
  $ aws cloudhsmv2 initialize-cluster --cluster-id <cluster ID> \
                                      --signed-cert file://<cluster ID>_CustomerHsmCertificate.crt \
                                      --trust-anchor file://<customerRootCA.crt OR chainCA.crt>
  {
      "State": "INITIALIZE_IN_PROGRESS",
      "StateMessage": "Cluster is initializing. State will change to INITIALIZED upon completion."
  }
  ```

------
#### [ AWS CloudHSM API ]

**Para inicializar um cluster (AWS CloudHSM API)**
+ Envie uma solicitação [https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_InitializeCluster.html](https://docs.aws.amazon.com/cloudhsm/latest/APIReference/API_InitializeCluster.html) com o seguinte:
  + O ID do cluster que foi criado anteriormente.
  + O certificado de HSM que foi assinado anteriormente. Se tiver executado as etapas na seção anterior, ele foi salvo em um arquivo denominado `<cluster ID>_CustomerHsmCertificate.crt`. 
  + Seu certificado de assinatura com base na abordagem que você escolheu:
    + **Se você escolheu a Opção A (certificado autoassinado único):** use o arquivo chamado `<customerRootCA>.crt`
    + **Se você escolheu a Opção B (cadeia de certificados):** Use o arquivo chamado `<chainCA>.crt`

------

# Instalar e configurar a CLI do CloudHSM
<a name="gs_cloudhsm_cli-install"></a>

Para interagir com o HSM em seu AWS CloudHSM cluster, você precisa da CLI do CloudHSM. 

Conecte-se à sua instância cliente e execute os comandos a seguir para baixar e instalar as ferramentas da linha de AWS CloudHSM comando. Para obter mais informações, consulte [Inicie uma instância cliente do Amazon EC2 para interagir com AWS CloudHSM](launch-client-instance.md).

------
#### [ Amazon Linux 2023 ]

Amazon Linux 2023 na arquitetura x86\$164:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Amzn2023/cloudhsm-cli-latest.amzn2023.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.amzn2023.x86_64.rpm
```

Amazon Linux 2023 na ARM64 arquitetura:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Amzn2023/cloudhsm-cli-latest.amzn2023.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.amzn2023.aarch64.rpm
```

------
#### [ Amazon Linux 2 ]

Amazon Linux 2 na arquitetura x86\$164:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-cli-latest.el7.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el7.x86_64.rpm
```

Amazon Linux 2 na ARM64 arquitetura:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL7/cloudhsm-cli-latest.el7.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el7.aarch64.rpm
```

------
#### [ RHEL 10 (10.0\$1) ]

RHEL 10 na arquitetura x86\$164:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL10/cloudhsm-cli-latest.el10.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el10.x86_64.rpm
```

RHEL 10 sobre ARM64 arquitetura:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL10/cloudhsm-cli-latest.el10.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el10.aarch64.rpm
```

------
#### [ RHEL 9 (9.2\$1) ]

RHEL 9 na arquitetura x86\$164:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL9/cloudhsm-cli-latest.el9.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el9.x86_64.rpm
```

RHEL 9 sobre ARM64 arquitetura:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL9/cloudhsm-cli-latest.el9.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el9.aarch64.rpm
```

------
#### [ RHEL 8 (8.3\$1) ]

RHEL 8 na arquitetura x86\$164:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-cli-latest.el8.x86_64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el8.x86_64.rpm
```

RHEL 8 sobre ARM64 arquitetura:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/EL8/cloudhsm-cli-latest.el8.aarch64.rpm
```

```
$ sudo yum install ./cloudhsm-cli-latest.el8.aarch64.rpm
```

------
#### [ Ubuntu 24.04 LTS ]

Ubuntu 24.04 LTS na arquitetura x86\$164:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Noble/cloudhsm-cli_latest_u24.04_amd64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u24.04_amd64.deb
```

Ubuntu 24.04 LTS na ARM64 arquitetura:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Noble/cloudhsm-cli_latest_u24.04_arm64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u24.04_arm64.deb
```

------
#### [ Ubuntu 22.04 LTS ]

Ubuntu 22.04 LTS na arquitetura x86\$164:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Jammy/cloudhsm-cli_latest_u22.04_amd64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u22.04_amd64.deb
```

Ubuntu 22.04 LTS na ARM64 arquitetura:

```
$ wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Jammy/cloudhsm-cli_latest_u22.04_arm64.deb
```

```
$ sudo apt install ./cloudhsm-cli_latest_u22.04_arm64.deb
```

------
#### [ Windows Server 2022 ]

Para o Windows Server 2022 na arquitetura x86\$164, abra PowerShell como administrador e execute o seguinte comando:

```
PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMCLI-latest.msi -Outfile C:\AWSCloudHSMCLI-latest.msi
```

```
PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMCLI-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
```

------
#### [ Windows Server 2019 ]

Para o Windows Server 2019 na arquitetura x86\$164, abra PowerShell como administrador e execute o seguinte comando:

```
PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMCLI-latest.msi -Outfile C:\AWSCloudHSMCLI-latest.msi
```

```
PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMCLI-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
```

------
#### [ Windows Server 2016 ]

Para o Windows Server 2016 na arquitetura x86\$164, abra PowerShell como administrador e execute o seguinte comando:

```
PS C:\> wget https://s3.amazonaws.com/cloudhsmv2-software/CloudHsmClient/Windows/AWSCloudHSMCLI-latest.msi -Outfile C:\AWSCloudHSMCLI-latest.msi
```

```
PS C:\> Start-Process msiexec.exe -ArgumentList '/i C:\AWSCloudHSMCLI-latest.msi /quiet /norestart /log C:\client-install.txt' -Wait
```

------

Use o comando a seguir para configurar a CloudHSM CLI.

**Para inicializar uma EC2 instância Linux para o Client SDK 5**
+  Use a ferramenta de configuração para especificar o endereço IP do(s) HSM(s) em seu cluster. 

  ```
  $ sudo /opt/cloudhsm/bin/configure-cli -a <The ENI IPv4 / IPv6 addresses of the HSMs>
  ```

**Para inicializar uma EC2 instância do Windows para o Client SDK 5**
+  Use a ferramenta de configuração para especificar o endereço IP do(s) HSM(s) em seu cluster. 

  ```
  PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" -a <The ENI IPv4 / IPv6 addresses of the HSMs>
  ```

# Ative o cluster em AWS CloudHSM
<a name="activate-cluster"></a>

Quando você ativa um AWS CloudHSM cluster, o estado do cluster muda de inicializado para ativo. Em seguida, é possível [gerenciar os usuários do HSM](manage-hsm-users.md) e [usar o HSM](use-hsm.md). 

**Importante**  
Antes de ativar o cluster, você deve primeiro copiar o certificado de emissão para o local padrão da plataforma em cada EC2 instância que se conecta ao cluster (você cria o certificado de emissão ao inicializar o cluster). Use o arquivo de certificado apropriado com base na abordagem escolhida durante a inicialização do cluster:  
**Se você escolheu a Opção A (certificado autoassinado único): Copiar** `customerRootCA.crt`
**Se você escolheu a Opção B (cadeia de certificados):** Copiar `chainCA.crt`
**Localização do Linux:**  

```
/opt/cloudhsm/etc/<customerRootCA.crt OR chainCA.crt>
```
**Localização do Windows:**  

```
C:\ProgramData\Amazon\CloudHSM\<customerRootCA.crt OR chainCA.crt>
```
Depois de copiar o arquivo do certificado, edite o `/opt/cloudhsm/etc/cloudhsm-cli.cfg` arquivo para garantir que o nome do arquivo do certificado corresponda ao nome do certificado CA que você copiou.

Depois de colocar o certificado de emissão, instale a CLI do CloudHSM e execute o comando [**cluster activate**](cloudhsm_cli-cluster-activate.md)em seu primeiro HSM. Você notará que a conta de administrador no primeiro HSM em seu cluster tem a função de administrador [não ativada](understanding-users.md). Essa é uma função temporária que só existe antes da ativação do cluster. Quando você ativa seu cluster, a função de administrador não ativado muda para administrador.

**Para ativar um cluster**

1. Conecte-se à instância do cliente que você iniciou anteriormente. Para obter mais informações, consulte [Inicie uma instância cliente do Amazon EC2 para interagir com AWS CloudHSM](launch-client-instance.md). Você pode iniciar uma instância do Linux ou um Windows Server. 

1. Execute a CLI do CloudHSM no modo interativo.

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm-cli interactive
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\cloudhsm-cli.exe" interactive
   ```

------

1. (Opcional) Use o comando **user list** para exibir os usuários existentes.

   ```
   aws-cloudhsm > user list
   {
     "error_code": 0,
     "data": {
       "users": [
         {
           "username": "admin",
           "role": "unactivated-admin",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         },
         {
           "username": "app_user",
           "role": "internal(APPLIANCE_USER)",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         }
       ]
     }
   }
   ```

1. Use o comando **cluster activate** para definir a senha inicial do administrador.

   ```
   aws-cloudhsm > cluster activate
   Enter password:<NewPassword>
   Confirm password:<NewPassword>
   {
     "error_code": 0,
     "data": "Cluster activation successful"
   }
   ```

   Recomendamos anotar a nova senha em uma planilha de senhas. Não perca a planilha. Recomendamos que você imprima uma cópia da planilha de senhas, use-a para registrar as senhas críticas do HSM e armazene-a em um local seguro. Também recomendamos armazenar uma cópia dessa planilha em um local externo seguro. 

1. (Opcional) Use o comando **user list** para verificar se o tipo de usuário foi alterado para [administrador/responsável pela criptografia (CO)](understanding-users-cmu.md#crypto-officer). 

   ```
   aws-cloudhsm > user list
   {
     "error_code": 0,
     "data": {
       "users": [
         {
           "username": "admin",
           "role": "admin",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         },
          {
           "username": "app_user",
           "role": "internal(APPLIANCE_USER)",
           "locked": "false",
           "mfa": [],
           "cluster-coverage": "full"
         }
       ]
     }
   }
   ```

1. Use o comando **quit** para parar a ferramenta CLI do CloudHSM.

   ```
   aws-cloudhsm > quit
   ```

Para obter mais informações sobre como trabalhar com a CLI do CloudHSM ou a CMU, consulte [Entendendo os usuários do HSM](understanding-users.md) e [Compreendendo o gerenciamento de usuários do HSM com o CMU](understand-users.md).

# Configurar o TLS mútuo entre o cliente e AWS CloudHSM (recomendado)
<a name="getting-started-setup-mtls"></a>

Os tópicos a seguir descrevem as etapas que você deve concluir para habilitar o Transport Layer Security (mTLS) mútuo entre o cliente e. AWS CloudHSM

**Considerações**
+ Atualmente, esse recurso está disponível exclusivamente no hsm2m.medium. Para obter mais informações sobre o tipo de HSM, consulte [AWS CloudHSM modos de cluster](cluster-hsm-types.md).
+ O mTLS não é compatível com armazenamentos de AWS CloudHSM chaves usados com AWS Key Management Service.

**Topics**
+ [Etapa 1. Criar e registrar uma âncora de confiança no HSM](#setup-mtls-create-and-register-trust-anchor)
+ [Etapa 2. Habilite o mTLS para AWS CloudHSM](#getting-start-setup-mtl-sdk)
+ [Etapa 3. Defina a aplicação do mTLS para AWS CloudHSM](#getting-start-setup-mtls-enforcement)

## Etapa 1. Criar e registrar uma âncora de confiança no HSM
<a name="setup-mtls-create-and-register-trust-anchor"></a>

Uma âncora de confiança deve ser criada e registrada no HSM antes de ativar o mTLS. Este é um processo em duas etapas: 

**Topics**
+ [Criar uma chave privada e um certificado raiz autoassinado](#setup-mtls-create-trust-anchor)
+ [Registrar a âncora de confiança no HSM](#setup-mtls-register-trust-anchor)

### Criar uma chave privada e um certificado raiz autoassinado
<a name="setup-mtls-create-trust-anchor"></a>

**nota**  
Para um cluster de produção, a chave deve ser criada com segurança usando uma fonte confiável de aleatoriedade. Recomendamos que você use um HSM fora do local e off-line ou o equivalente. Armazene a chave com segurança.  
Durante a fase de desenvolvimento e teste, você pode usar qualquer ferramenta conveniente (como o OpenSSL) para criar a chave e autoassinar um certificado raiz. Você precisará da chave e do certificado raiz para assinar o certificado do cliente no comando [enable mTLS for AWS CloudHSM](#getting-start-setup-mtl-sdk).

Os exemplos a seguir mostram como criar uma chave privada e um certificado raiz autoassinado com o [OpenSSL](https://www.openssl.org/). 

**Example Crie uma chave privada com o OpenSSL**  
Use o comando a seguir para criar uma chave de RSA de 4096 bits criptografada com o algoritmo AES-256. Para usar esse exemplo, *<mtls\$1ca\$1root\$11.key>* substitua pelo nome do arquivo em que você deseja armazenar a chave.  

```
$ openssl genrsa -out <mtls_ca_root_1.key> -aes256 4096
Generating RSA private key, 4096 bit long modulus
.....................................+++
.+++
e is 65537 (0x10001)
Enter pass phrase for mtls_ca_root_1.key:
Verifying - Enter pass phrase for mtls_ca_root_1.key:
```

**Example – Criar um certificado raiz autoassinado com o OpenSSL**  
Use o comando a seguir para criar um certificado raiz autoassinado chamado `mtls_ca_root_1.crt` da chave privada que você acabou de criar. O certificado é válido por 25 anos (9130 dias). Leia as instruções na tela e siga os avisos.   

```
$ openssl req -new -x509 -days 9130 -key mtls_ca_root_1.key -out mtls_ca_root_1.crt
Enter pass phrase for mtls_ca_root_1.key:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

### Registrar a âncora de confiança no HSM
<a name="setup-mtls-register-trust-anchor"></a>

Depois de criar um certificado raiz autoassinado, o administrador deve registrá-lo como âncora confiável no AWS CloudHSM cluster.

**Para registrar uma âncora de confiança no HSM**

1. Use o comando a seguir para iniciar CloudHSM CLI:

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm-cli interactive
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\cloudhsm-cli.exe" interactive
   ```

------

1. Usando a CloudHSM CLI, faça login como administrador.

   ```
   aws-cloudhsm > login --username <admin> --role admin
   Enter password:
   {
     "error_code": 0,
     "data": {
       "username": "<admin>",
       "role": "admin"
     }
   }
   ```

1. Use o comando ** [Registrar uma âncora de confiança com a CLI do CloudHSM](cloudhsm_cli-cluster-mtls-register-trust-anchor.md) ** para registrar a âncora de confiança. Para obter mais informações, consulte o exemplo a seguir ou use o comando **help cluster mtls register-trust-anchor**.

**Example — Registre uma âncora de confiança com o cluster AWS CloudHSM**  
O exemplo a seguir mostra como usar o comando **cluster mtls register-trust-anchor** na CLI do CloudHSM para registrar uma âncora de confiança no HSM. Para usar esse comando, o CO deve estar conectado no HSM. Substitua estes valores pelos seus próprios:  

```
aws-cloudhsm > cluster mtls register-trust-anchor --path </path/mtls_ca_root_1.crt>
{
  "error_code": 0,
  "data": {
    "trust_anchor": {
      "certificate-reference": "0x01",
      "certificate": "<PEM Encoded Certificate>",
      "cluster-coverage": "full"
    }
  }
}
```
AWS CloudHSM suporta o registro de certificados intermediários como âncora confiável. Nesses casos, todo o arquivo da cadeia de certificados codificado pelo PEM precisa ser registrado no HSM, com os certificados em ordem hierárquica.   
 AWS CloudHSM suporta uma cadeia de certificados de 6980 bytes.
Depois de registrar com êxito a âncora de confiança, é possível executar o comando **cluster mtls list-trust-anchors** para verificar as âncoras de confiança registradas atuais, conforme mostrado abaixo:  

```
aws-cloudhsm > cluster mtls list-trust-anchors
{
  "error_code": 0,
  "data": {
    "trust_anchors": [
      {
        "certificate-reference": "0x01",
        "certificate": "<PEM Encoded Certificate>",
        "cluster-coverage": "full"
      }
    ]
  }
}
```
 No máximo 2 (duas) âncoras de confiança podem ser registradas em instâncias hsm2m.medium.

## Etapa 2. Habilite o mTLS para AWS CloudHSM
<a name="getting-start-setup-mtl-sdk"></a>

Para habilitar o mTLS para AWS CloudHSM, você precisa criar uma chave privada e um certificado de cliente assinado pelo certificado raiz que geramos em [Criar e registrar uma âncora confiável no HSM e, em](#setup-mtls-create-and-register-trust-anchor) seguida, usar qualquer ferramenta de configuração do Client SDK 5 para configurar o caminho da chave privada e o caminho da cadeia de certificados do cliente. 

**Topics**
+ [Criar uma chave privada e uma cadeia de certificados de clientes](#create-client-ssl)
+ [Configurar mTLS para Client SDK 5](#enable-ssl-5)

### Criar uma chave privada e uma cadeia de certificados de clientes
<a name="create-client-ssl"></a>

**Example Crie uma chave privada com o OpenSSL**  
Use o comando a seguir para criar uma chave RSA de 4096 bits. Para usar esse exemplo, *<ssl-client.key>* substitua pelo nome do arquivo em que você deseja armazenar a chave.  

```
$ openssl genrsa -out <ssl-client.key> 4096
Generating RSA private key, 4096 bit long modulus
.....................................+++
.+++
e is 65537 (0x10001)
```

**Example – Gere uma Certificate Signing Request (CSR – Solicitação de assinatura de certificado).**  
Use o comando a seguir para gerar uma Certificate Signing Request (CSR – Solicitação de assinatura de certificado) com a chave privada que você acabou de criar. Leia as instruções na tela e siga os avisos.  

```
$ openssl req -new -key <ssl-client.key> -out <ssl-client.csr>
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
```

**Example – Assinar a CSR com o certificado raiz**  
Use o comando a seguir para assinar a CSR com o certificado raiz que criamos e registramos em [Criar e registrar uma âncora de confiança no HSM](#setup-mtls-create-and-register-trust-anchor) e criar um certificado de cliente chamado `ssl-client.crt`. O certificado é válido por 5 anos (1826 dias).   

```
$ openssl x509 -req -days 1826 -in <ssl-client.csr> -CA <mtls_ca_root_1.crt> -CAkey <mtls_ca_root_1.key> -CAcreateserial -out <ssl-client.crt>
```

**Example – Criar uma cadeia de certificado de cliente**  
Use o comando a seguir para combinar o certificado do cliente e o certificado raiz que criamos e registramos em [Criar e registrar uma âncora de confiança no HSM](#setup-mtls-create-and-register-trust-anchor) e criar uma cadeia de certificados do cliente chamada `ssl-client.pem`, que será usada para configurar na próxima etapa.  

```
$ cat <ssl-client.crt> <mtls_ca_root_1.crt> > <ssl-client.pem>
```
 Se você registrou certificados intermediários em [Criar e registrar uma âncora de confiança no HSM](#setup-mtls-create-and-register-trust-anchor) como âncora de confiança, combine o certificado do cliente com toda a cadeia de certificados para criar uma cadeia de certificados do cliente.

### Configurar mTLS para Client SDK 5
<a name="enable-ssl-5"></a>

Use qualquer ferramenta de configuração do Client SDK 5 para habilitar o TLS mútuo fornecendo o caminho correto da chave do cliente e o caminho da cadeia de certificados do cliente. Para obter mais informações sobre a ferramenta de configuração para o Client SDK 5, consulte [AWS CloudHSM Ferramenta de configuração do Client SDK 5](configure-sdk-5.md).

------
#### [ PKCS \$111 library ]

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Linux**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   $ sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Use a ferramenta de configuração para especificar `ssl-client.pem` e `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-pkcs11 \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Windows**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  Com um PowerShell intérprete, use a ferramenta de configuração para especificar `ssl-client.pem` e. `ssl-client.key`

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-pkcs11.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

------
#### [ OpenSSL Dynamic Engine ]

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Linux**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Use a ferramenta de configuração para especificar `ssl-client.pem` e `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-dyn \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

------
#### [ Key Storage Provider (KSP) ]

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Windows**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  Com um PowerShell intérprete, use a ferramenta de configuração para especificar `ssl-client.pem` e. `ssl-client.key`

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-ksp.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

------
#### [ JCE provider ]

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Linux**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Use a ferramenta de configuração para especificar `ssl-client.pem` e `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-jce \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Windows**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  Com um PowerShell intérprete, use a ferramenta de configuração para especificar `ssl-client.pem` e. `ssl-client.key`

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-jce.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

------
#### [ CloudHSM CLI ]

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Linux**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   $ sudo cp ssl-client.pem </opt/cloudhsm/etc>
   sudo cp ssl-client.key </opt/cloudhsm/etc>
   ```

1.  Use a ferramenta de configuração para especificar `ssl-client.pem` e `ssl-client.key`.

   ```
   $ sudo /opt/cloudhsm/bin/configure-cli \
               --client-cert-hsm-tls-file </opt/cloudhsm/etc/ssl-client.pem> \
               --client-key-hsm-tls-file </opt/cloudhsm/etc/ssl-client.key>
   ```

**Para usar um certificado e uma chave personalizados para autenticação mútua cliente TLS e HSM com o Client SDK 5 no Windows**

1. Copie a chave e o certificado para o diretório apropriado.

   ```
   cp ssl-client.pem <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem>
   cp ssl-client.key <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

1.  Com um PowerShell intérprete, use a ferramenta de configuração para especificar `ssl-client.pem` e. `ssl-client.key`

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\configure-cli.exe" `
               --client-cert-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.pem> `
               --client-key-hsm-tls-file <C:\ProgramData\Amazon\CloudHSM\ssl-client.key>
   ```

------

## Etapa 3. Defina a aplicação do mTLS para AWS CloudHSM
<a name="getting-start-setup-mtls-enforcement"></a>

Depois de configurar com qualquer uma das ferramentas de configuração do Client SDK 5, a conexão entre o cliente e o cliente AWS CloudHSM será TLS mútuo no cluster. No entanto, remover o caminho da chave privada e o caminho da cadeia de certificados do cliente do arquivo de configuração transformará a conexão em TLS normal novamente. É possível usar a CLI do CloudHSM para definir a imposição de mTLS no cluster concluindo as seguintes etapas:

1. Use o comando a seguir para iniciar CloudHSM CLI:

------
#### [ Linux ]

   ```
   $ /opt/cloudhsm/bin/cloudhsm-cli interactive
   ```

------
#### [ Windows ]

   ```
   PS C:\> & "C:\Program Files\Amazon\CloudHSM\bin\cloudhsm-cli.exe" interactive
   ```

------

1. Usando a CloudHSM CLI, faça login como administrador.

   ```
   aws-cloudhsm > login --username <admin> --role admin
   Enter password:
   {
     "error_code": 0,
     "data": {
       "username": "<admin>",
       "role": "admin"
     }
   }
   ```
**nota**  
 1. Verifique se você configurou a CLI do CloudHSM e inicie-a em uma conexão mTLS.  
 2. É preciso estar logado como usuário administrador padrão com o nome de usuário **administrador** antes de definir a imposição do mTLS. 

1. Use o comando ** [Definir o nível de imposição do mTLS com a CloudHSM CLI](cloudhsm_cli-cluster-mtls-set-enforcement.md) ** para definir a imposição. Para obter mais informações, consulte o exemplo a seguir ou use o comando **help cluster mtls set-enforcement**.  
**Example — Defina a aplicação do mTLS com cluster AWS CloudHSM**  

   O exemplo a seguir mostra como usar o comando **cluster mtls set-enforcement** na CLI do CloudHSM a fim de definir a imposição de mTLS com o HSM. Para usar esse comando, o administrador com nome de usuário admin deve estar conectado no HSM.

   ```
   aws-cloudhsm > cluster mtls set-enforcement --level cluster
   {
     "error_code": 0,
     "data": {
       "message": "Mtls enforcement level set to Cluster successfully"
     }
   }
   ```
**Atenção**  
Depois de impor o uso de mTLS no cluster, todas as conexões não MTLS existentes serão descartadas e a conexão com o cluster será possível apenas com certificados mTLS.

# Crie e use chaves em AWS CloudHSM
<a name="create-apps"></a>

[Antes de criar e usar chaves em seu novo cluster, crie um usuário do módulo de segurança de hardware (HSM) com a CLI do AWS CloudHSM. Para obter mais informações, [consulte Entendendo as tarefas de gerenciamento de usuários do HSM,](understand-users.md)[Introdução à interface de linha de comando (CLI) do AWS CloudHSM e Como gerenciar usuários do HSM](cloudhsm_cli-getting-started.md).](manage-hsm-users.md)

**nota**  
Se estiver usando o SDK do cliente 3, use o [CloudHSM Management Utility (CMU)](cloudhsm_mgmt_util.md) em vez do CloudHSM CLI.

Depois de criar usuários do HSM, você pode entrar no HSM e gerenciar as chaves usando qualquer uma destas opções: 
+ Use o [utilitário de gerenciamento de chaves, uma ferramenta de linha de comando](key_mgmt_util-getting-started.md)
+ Crie um aplicativo C usando a biblioteca [PKCS \$111](pkcs11-library.md)
+ Crie um aplicativo Java usando o [provedor JCE](java-library.md)
+ Use o [OpenSSL Dynamic Engine diretamente da linha de comando](openssl-library.md)
+ Use o OpenSSL Dynamic Engine para descarregamento de TLS com [servidores web NGINX e Apache](ssl-offload.md)
+ Use o Provedor de Armazenamento de Chaves (KSP) para AWS CloudHSM com a [Autoridade de Certificação (CA) do Microsoft Windows Server](win-ca-overview-sdk5.md)
+ Use o Key Storage Provider (KSP) para usar a AWS CloudHSM ferramenta [Microsoft Sign](signtool-sdk5.md)
+ Use os provedores de CNG e KSP para descarga de TLS com o servidor Web do [Internet Information Server (IIS)](ssl-offload.md)