Como habilitar a assinatura de DNSSEC e estabelecer uma cadeia de confiança - Amazon Route 53

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á.

Como habilitar a assinatura de DNSSEC e estabelecer uma cadeia de confiança

As etapas incrementais são aplicáveis ao proprietário da zona hospedada e ao responsável por manter a zona pai. Eles podem ser a mesma pessoa, mas, se não forem, o proprietário da zona deve notificar e trabalhar com o responsável por mantê-la.

Recomendamos as etapas deste artigo para que sua zona seja assinada e incluída na cadeia de confiança. As seguintes etapas minimizam o risco de integração no DNSSEC.

nota

Certifique-se de ler os prerrequisitos antes de começar a usar Como configurar a assinatura de DNSSEC no Amazon Route 53.

Existem três etapas a serem seguidas para habilitar a assinatura de DNSSEC, conforme descrito nas seções abaixo:

Etapa 1: Preparar-se para habilitar a assinatura de DNSSEC

As etapas de preparação ajudam você a minimizar o risco de integração ao DNSSEC, monitorando a disponibilidade da zona e diminuindo os tempos de espera entre habilitar a assinatura e inserir o registro de signer da delegação (DS).

Para preparar-se para habilitar a assinatura de DNSSEC
  1. Faça o monitoramento da disponibilidade da zona

    É possível fazer o monitoramento da zona para verificar a disponibilidade dos seus nomes de domínio. Isso pode ajudar você a resolver problemas que possam justificar um passo para trás depois que você habilitar a assinatura de DNSSEC. É possível fazer o monitoramento dos seus nomes de domínio com a maior parte do tráfego utilizando o registro de consultas em log. Para obter mais informações sobre como configurar o registro de consultas em log, consulte Como monitorar o Amazon Route 53.

    O monitoramento pode ser feito com o uso de um shell script ou de um serviço de terceiros. Porém, ele não deve ser o único sinal para determinar a necessidade de uma reversão. Você também pode obter feedback dos seus clientes devido à indisponibilidade de um domínio.

  2. Reduza o TTL máximo da zona.

    O TTL máximo da zona é o registro de TTL mais longo que ela contém. No seguinte exemplo de zona, o TTL máximo da zona é de 1 dia (86.400 segundos).

    Nome TTL Classe do registro Tipo de registro Dados do registro

    example.com.

    900

    IN

    SOA

    ns1.example.com. hostmaster.example.com. 2002022401 10800 15 604800 300

    example.com.

    900

    IN

    ns

    ns1.example.com.

    route53.example.com.

    86400

    IN

    TXT

    some txt record

    Diminuir o TTL máximo da zona ajudará a reduzir o tempo de espera entre habilitar a assinatura e inserir o registro de signer de delegação (DS). Recomendamos reduzir o TTL máximo da zona para 1 hora (3.600 segundos). Isso permitirá uma reversão depois de apenas uma hora se algum resolvedor apresentar problemas com o armazenamento em cache de registros assinados.

    Reversão: desfaça as alterações no TTL.

  3. Diminua o campo de TTL SOA e SOA mínimo.

    O campo de SOA mínimo é o último nos dados do registro SOA. No seguinte exemplo de registro SOA, o campo mínimo tem o valor de 5 minutos (300 segundos).

    Nome TTL Classe do registro Tipo de registro Dados do registro

    example.com.

    900

    IN

    SOA

    ns1.example.com. hostmaster.example.com. 2002022401 10800 15 604800 300

    O campo de TTL SOA e SOA mínimo determina por quanto tempo os resolvedores memorizam respostas negativas. Depois que você habilitar a assinatura, os servidores de nomes do Route 53 começarão a retornar registros NSEC para respostas negativas. O NSEC contém informações que os resolvedores podem usar para sintetizar uma resposta negativa. Se uma reversão for necessária porque as informações do NSEC fizeram com que um resolvedor considerasse uma resposta negativa para um nome, basta esperar o máximo do campo de TTL SOA e SOA mínimo para que o resolvedor interrompa essa suposição.

    Reversão: desfaça as alterações do SOA.

  4. Certifique-se de que as alterações no campo de TTL e SOA mínimo estejam efetivadas.

    Use GetChangepara garantir que suas alterações até agora tenham sido propagadas para todos os servidores DNS do Route 53.

Etapa 2: Habilitar a assinatura de DNSSEC e criar uma KSK

Você pode habilitar a assinatura do DNSSEC e criar uma chave de assinatura de chave (KSK) usando AWS CLI ou no console do Route 53.

Quando você fornece ou cria uma chave de KMS gerenciada pelo cliente, há vários requisitos. Para ter mais informações, consulte Como trabalhar com chaves gerenciadas pelo cliente para DNSSEC.

CLI

É possível usar uma chave existente ou criar uma nova, executando um comando da AWS CLI como o seguinte e usando seus próprios valores para hostedzone_id, cmk_arn, ksk_name e unique_string (para tornar a solicitação exclusiva):

aws --region us-east-1 route53 create-key-signing-key \ --hosted-zone-id $hostedzone_id \ --key-management-service-arn $cmk_arn --name $ksk_name \ --status ACTIVE \ --caller-reference $unique_string

Para obter mais informações sobre chaves gerenciadas pelo cliente, consulte Como trabalhar com chaves gerenciadas pelo cliente para DNSSEC. Consulte também CreateKeySigningKey.

Para habilitar a assinatura do DNSSEC, execute um AWS CLI comando como o seguinte, usando seu próprio valor para: hostedzone_id

aws --region us-east-1 route53 enable-hosted-zone-dnssec \ --hosted-zone-id $hostedzone_id

Para obter mais informações, consulte enable-hosted-zone-dnssecEnableHostedZoneDNSSEC.

Console
Para habilitar a assinatura de DNSSEC e criar uma KSK
  1. Faça login AWS Management Console e abra o console do Route 53 em https://console.aws.amazon.com/route53/.

  2. No painel de navegação, escolha Hosted zones (Zonas hospedadas) e depois escolha uma zona hospedada na qual você deseja habilitar a assinatura de DNSSEC.

  3. Na guia DNSSEC signing (Assinatura de DNSSEC), escolha Enable DNSSEC signing (Habilitar assinatura de DNSSEC).

    nota

    Se a opção nesta seção for Disable DNSSEC signing (Desabilitar a assinatura de DNSSEC), você já concluiu a primeira etapa para habilitar a assinatura de DNSSEC. Certifique-se de estabelecer, ou de que já existe, uma cadeia de confiança para a zona hospedada da DNSSEC e, em seguida, está concluído. Para ter mais informações, consulte Etapa 3: Estabelecer uma cadeia de confiança.

  4. Na seção Key-signing key (KSK) creation (Criação de chaves de assinatura de chaves), selecione Create new KSK (Criar novo KSK) e, em Provide KSK name (Forneça um nome para a KSK), insira um nome para a KSK que o Route 53 criará para você. O nome só pode conter números, letras e sublinhados (_). Essa opção deve ser exclusiva.

  5. Em Customer managed CMK (CMK gerenciada pelo cliente), escolha a chave gerenciada pelo cliente para o Route 53 a ser usada quando ele criar a KSK para você. Você pode usar uma chave gerenciada pelo cliente existente que se aplica à assinatura de DNSSEC ou criar uma nova chave gerenciada pelo cliente.

    Quando você fornece ou cria uma chave gerenciada pelo cliente, há vários requisitos. Para ter mais informações, consulte Como trabalhar com chaves gerenciadas pelo cliente para DNSSEC.

  6. Insira o alias para uma chave gerenciada pelo cliente existente. Se quiser usar uma nova chave gerenciada pelo cliente, insira um alias para a chave gerenciada pelo cliente, e o Route 53 criará uma para você.

    nota

    Se você optar por fazer com que o Route 53 crie uma chave gerenciada pelo cliente, esteja ciente de que cobranças separadas se aplicam a cada chave gerenciada pelo cliente. Para mais informações, consulte Preço do serviço gerenciado pela chave da AWS.

  7. Escolha Enable DNSSEC signing (Habilitar assinatura de DNSSEC).

Depois de habilitar a assinatura da zona, conclua as etapas a seguir (independentemente de ter usado o console ou a CLI):

  1. Verifique se a assinatura da zona está efetiva.

    Se você usou AWS CLI, você pode usar o ID de operação da saída da EnableHostedZoneDNSSEC() chamada para executar get-change ou GetChangepara garantir que todos os servidores DNS do Route 53 estejam assinando respostas (status =). INSYNC

  2. Aguarde pelo menos o TTL máximo da zona anterior.

    Aguarde até que os resolvedores liberem todos os registros não assinados de seus caches. Para isso, você deve aguardar pelo menos o TTL máximo da zona anterior. No zona example.com acima, o tempo de espera é de 1 dia.

  3. Monitore relatórios de problemas de clientes.

    Depois de habilitar a assinatura da zona, seus clientes podem começar a perceber problemas relacionados a dispositivos de rede e a resolvedores. O período de monitoramento recomendado é de duas semanas.

    Os seguintes são exemplos de problemas com os quais você pode se deparar:

    • Alguns dispositivos de rede podem limitar o tamanho das respostas de DNS a menos de 512 bytes, o que é um limite muito pequeno para algumas respostas assinadas. Esses dispositivos devem ser reconfigurados para permitirem tamanhos maiores de resposta de DNS.

    • Alguns dispositivos de rede fazem uma inspeção profunda nas respostas de DNS e removem certos registros que não compreendem, como os utilizados para o DNSSEC. Esses dispositivos precisam ser reconfigurados.

    • Os resolvedores de alguns clientes declaram que podem aceitar uma resposta UDP maior do que aquelas com suporte pela rede. Você pode testar a capacidade da sua rede e configurar resolvedores de acordo. Para saber mais, consulte Servidor de teste de tamanho de respostas de DNS.

Reversão: chame o DisableHostedZoneDNSSEC e, em seguida, reverta as etapas. Etapa 1: Preparar-se para habilitar a assinatura de DNSSEC

Etapa 3: Estabelecer uma cadeia de confiança

Depois de habilitar a assinatura de DNSSEC para uma zona hospedada no Route 53, estabeleça uma cadeia de confiança para que a zona hospedada conclua sua configuração de assinatura de DNSSEC. Para fazer isso, crie um registro de Signatário da Delegação (DS) na zona hospedada pai, para sua zona hospedada, usando as informações fornecidas pelo Route 53. Dependendo de onde seu domínio está registrado, você adiciona o registro à zona hospedada pai no Route 53 ou em outro registrador de domínio.

Para estabelecer uma cadeia de confiança para assinatura de DNSSEC
  1. Faça login AWS Management Console e abra o console do Route 53 em https://console.aws.amazon.com/route53/.

  2. No painel de navegação, escolha Hosted zones (Zonas hospedadas) e escolha uma zona hospedada para a qual você deseja estabelecer uma cadeia de confiança de DNSSEC. Você deve habilitar primeiro a assinatura de DNSSEC.

  3. Na guia DNSSEC signing (Assinatura de DNSSEC), em DNSSEC signing (Assinatura de DNSSEC), escolha View information to create DS record (Exibir informações para criar registro DS).

    nota

    Se você não vir View information to create DS record (Exibir informações para criar registro DS) nesta seção, você deve habilitar a assinatura de DNSSEC antes de estabelecer a cadeia de confiança. Escolha Enable DNSSEC signing (Habilitar assinatura de DNSSEC) e conclua as etapas descritas em Etapa 2: Habilitar a assinatura de DNSSEC e criar uma KSK. Depois, retorne a essas etapas para estabelecer a cadeia de confiança.

  4. Em Establish a chain of trust (Estabelecer uma cadeia de confiança), escolha Route 53 registrar (Registrador do Route 53) ou Another domain registrar (Outro registrador de domínio), dependendo de onde seu domínio está registrado.

  5. Use os valores fornecidos da etapa 3 para criar um registro de DS para a zona hospedada pai no Route 53. Se o domínio não estiver hospedado no Route 53, utilize os valores fornecidos para criar um registro de DS no site do registrador de domínios.

    • Se a zona principal for um domínio gerenciado pelo Route 53, siga estas etapas:

      Certifique-se de configurar o algoritmo de assinatura correto (ECDSAP256SHA256 e tipo 13) e algoritmo de compilação (SHA-256 e tipo 2).

      Se o Route 53 for o registrador, siga este procedimento no console do Route 53:

      1. Observe os valores de Key type (Tipo de chave), Signing algorithm (Algoritmo de assinatura) e Public key (Chave pública). No painel de navegação, escolha Registered domains (Domínios registrados).

      2. Selecione um domínio e, em seguida, ao lado de DNSSEC status (Status de DNSSEC), escolha Manage keys (Gerenciar chaves).

      3. Na caixa de diálogo Manage DNSSEC keys (Gerenciar chaves de DNSSEC), escolha o Key type (Tipo de chave) apropriado e Algorithm (Algoritmo) para o Route 53 registrar (Registrador do Route 53) nos menus suspensos.

      4. Copiar a Public key (Chave pública) para o registrador do Route 53. Na caixa de diálogo Manage DNSSEC keys (Gerenciar chaves de DNSSEC), cole o valor na caixa Public key (Chave pública).

      5. Escolha Add (Adicionar).

        O Route 53 adicionará o registro DS à zona pai da chave pública. Por exemplo, se o seu domínio for example.com, o registro DS será adicionado à zona DNS .com.

    • Se a zona principal estiver hospedada no Route 53 ou se o domínio for gerenciado em outro registro, entre em contato com a zona principal ou com o proprietário do registro do domínio para seguir estas instruções:

      Para garantir que as seguintes etapas funcionem sem problemas, introduza um TTL de DS baixo na zona pai. Convém configurar o TTL de DS como 5 minutos (300 segundos) para uma recuperação mais rápida caso você precise reverter as alterações.

      • Caso sua zona pai seja administrada por outro registro, entre em contato com o registrador para introduzir o registro de DS da sua zona. Em geral, você não poderá ajustar o TTL do registro de DS.

      • Se a zona pai estiver hospedada no Route 53, entre em contato com o proprietário da zona pai para introduzir o registro de DS da sua zona.

        Forneça o $ds_record_value ao proprietário da zona pai. Para obtê-lo, clique em View Information to create DS record (Exibir informações para criar registro de DS) no console e copie o campo DS record (Registro de DS) ou chame a API GetDNSsec e recupere o valor do campo 'DSRecord':

        aws --region us-east-1 route53 get-dnssec --hosted-zone-id $hostedzone_id

        O proprietário da zona pai pode inserir o registro usando o console do Route 53 ou a CLI.

        • Para inserir o registro DS usando AWS CLI, o proprietário da zona principal cria e nomeia um arquivo JSON semelhante ao exemplo a seguir. O proprietário da zona pai pode atribuir ao arquivo um nome semelhante a inserting_ds.json.

          { "HostedZoneId": "$parent_zone_id", "ChangeBatch": { "Comment": "Inserting DS for zone $zone_name", "Changes": [ { "Action": "UPSERT", "ResourceRecordSet": { "Name": "$zone_name", "Type": "DS", "TTL": 300, "ResourceRecords": [ { "Value": "$ds_record_value" } ] } } ] } }

          Em seguida, execute o seguinte comando:

          aws --region us-east-1 route53 change-resource-record-sets --cli-input-json file://inserting_ds.json
        • Para inserir o registro de DS usando o console:

          Abra o console do Route 53 em https://console.aws.amazon.com/route53/.

          No painel de navegação, escolha Hosted zones (Zonas hospedadas), o nome da zona hospedada e depois Create record (Criar registro). Escolha o roteamento simples para Routing policy (Política de roteamento).

          No campo Record name (Nome de registro), insira o mesmo nome que $zone_name, selecione DS para Record type (Tipo de registro) e insira o valor de $ds_record_value no campo Value (Valor) e escolha Create records (Criar registros).

    Reversão: remova o DS da zona pai, aguarde o TTL do DS e depois reverta as etapas para estabelecer confiança. Se a zona pai estiver hospedada no Route 53, seu proprietário poderá alterar Action de UPSERT para DELETE no arquivo JSON e executar novamente o exemplo de CLI acima.

  6. Aguarde até que as atualizações sejam propagadas, com base no TTL para seus registros de domínio.

    Se a zona principal estiver no serviço DNS do Route 53, o proprietário da zona principal poderá confirmar a propagação completa por meio da GetChangeAPI.

    Caso contrário, você poderá sondar periodicamente a zona pai no que diz respeito ao registro DS e aguardar mais 10 minutos depois para aumentar a probabilidade de a inserção do registro de DS ser completamente propagada. Alguns registradores agendam a inserção do DS, por exemplo, uma vez ao dia.

Quando você introduz o registro de signer de delegação (DS) na zona pai, os resolvedores validados que escolheram o DS começam a validar as respostas da zona.

Para garantir que as etapas para estabelecer a confiança sigam sem problemas, faça o seguinte:

  1. Localize o TTL de NS máximo.

    Existem dois conjuntos de registros de NS associados às suas zonas:

    • O registro de NS de delegação, ou seja, o registro de NS da sua zona mantida pela zona pai. Você pode encontrá-lo executando os seguintes comandos Unix (se sua zona for example.com, a zona pai será com):

      dig -t NS com

      Escolha um dos registros de NS e execute o seguinte:

      dig @one of the NS records of your parent zone -t NS example.com

      Por exemplo:

      dig @b.gtld-servers.net. -t NS example.com

    • O registro de NS na zona, ou seja, o registro de NS na sua zona. Você pode localizá-lo executando o seguinte comando Unix:

      dig @one of the NS records of your zone -t NS example.com

      Por exemplo:

      dig @ns-0000.awsdns-00.co.uk. -t NS example.com

      Observe o TTL máximo de ambas as zonas.

  2. Aguarde o TTL de NS máximo.

    Antes da inserção do DS, os resolvedores recebem uma resposta assinada, mas não validam a assinatura. Quando o registro de DS for inserido, os resolvedores apenas o verão quando o registro de NS da zona expirar. Quando os resolvedores voltarem a buscar o registro de NS, o registro de DS também será retornado.

    Se o seu cliente estiver executando um resolvedor em um host com um relógio fora de sincronia, verifique se esse relógio está dentro de 1 hora após a hora correta.

    Depois que você concluir essa etapa, todos os resolvedores com reconhecimento de DNSSEC validarão sua zona.

  3. Observe a resolução de nomes.

    Você deve observar que não existem problemas com resolvedores validando sua zona. Não deixe de considerar o tempo necessário para os seus clientes informarem problemas para você.

    Convém fazer um monitoramento por até 2 semanas.

  4. (Opcional) Prolongue os TTLs de DS e NS.

    Se estiver satisfeito com a configuração, você poderá salvar as alterações de TTL e SOA feitas. O Route 53 limita o TTL a 1 semana para zonas assinadas. Para ter mais informações, consulte Como configurar a assinatura de DNSSEC no Amazon Route 53.

    Se você puder alterar o TTL de DS, recomendamos defini-lo como 1 hora.