Ver claves de DNSSEC

En esta página, se describe cómo ver las claves de las extensiones de seguridad del sistema de nombres de dominio (DNSSEC).

Para ver una descripción general conceptual de DNSSEC, consulta Descripción general de DNSSEC.

Un DNSKEY es un tipo de registro DNS que contiene una clave de firma pública. Si migras una zona con firma de DNSSEC a otro operador de DNS, es posible que debas ver los registros DNSKEY. El proceso de migración en RFC 6781 requiere importar los DNSKEY de la clave de firma de claves (KSK) y la clave de firma de claves (KSK) desde la zona de Cloud DNS a la zona del otro operador.

Si habilitaste DNSSEC en una zona, Cloud DNS administra automáticamente la creación y rotación de las claves DNSSEC (registros DNSKEY) y la firma de datos de zona con registros de firma digital del registro de recursos (RRSIG). Cloud DNS no admite la rotación automática de KSK porque estas rotaciones requieren interacción manual con el registrador de dominios. Sin embargo, Cloud DNS realiza rotaciones ZSK completamente automáticas. Puedes ver los DNSKEY administrados automáticamente con Google Cloud CLI o la API de REST.

Antes de comenzar

Para ver las claves DNSSEC, debes crear una zona administrada y habilitar DNSSEC en la zona a fin de que se creen los registros DNSKEY.

Mostrar DNSKEY actuales

Para mostrar los registros DNSKEY actuales de tu zona, sigue estos pasos.

gcloud

En los siguientes ejemplos de la línea de comandos de gcloud, puedes especificar el parámetro --project para que opere en un proyecto específico.

Para imprimir todos los DNSKEY en formato JSON, usa el comando gcloud dns dns-keys list:

gcloud dns dns-keys list --zone ZONE_NAME

Reemplaza ZONE_NAME por el nombre de la zona administrada.

Para mostrar los detalles de un DNSKEY especificado en formato JSON, usa el comando gcloud dns dns-keys describe:

gcloud dns dns-keys describe DNSKEY_ID --zone ZONE_NAME

Reemplaza lo siguiente:

  • DNSKEY_ID: El ID del DNSKEY del que deseas ver los detalles
  • ZONE_NAME: El nombre de la zona administrada

API

Para imprimir todos los DNSKEY en una colección de ResourceRecordSet, usa el método dnsKeys.get con un cuerpo de solicitud vacío:

GET https://dns.googleapis.com/dns/v1/projects/PROJECT/managedZones/ZONE_NAME/dnsKeys

Reemplaza lo siguiente:

  • PROJECT: El nombre o ID del proyecto de DNS
  • ZONE_NAME: El nombre de la zona administrada

El resultado es similar al siguiente:

{
  "kind": "dns#dnsKeysListResponse",
  "header": {
    "operationId": string
  },
  "dnsKeys": [
    dnsKeys Resource
  ],
  "nextPageToken": string
}

Para mostrar los detalles de un DNSKEY especificado en formato JSON, usa el método dnsKeys DNSKEY_ID.get con un cuerpo de solicitud vacío:

GET https://dns.googleapis.com/dns/v1/projects/PROJECT/managedZones/ZONE_NAME/dnsKeys/DNSKEY_ID

Reemplaza lo siguiente:

  • PROJECT: El nombre o ID del proyecto de DNS
  • ZONE_NAME: El nombre de la zona administrada
  • DNSKEY_ID: El ID del DNSKEY del que deseas ver los detalles

Python

  from apiclient import errors
  from apiclient.discovery import build

  PROJECT_NAME= 'PROJECT_NAME'
  ZONE_NAME= 'ZONE_NAME'

  try:
    service = build('dns', 'v1')
    response = service.dnskeys().list(project=PROJECT_NAME,
                                      managedZone=ZONE_NAME).execute()
  except errors.HttpError, error:
    print 'An error occurred: %s' % error

  try:
    response = service.dnskeys().list(project=PROJECT_NAME,
                                      managedZone=ZONE_NAME,
                                      keyId=KEY_ID).execute()
  except errors.HttpError, error:
    print 'An error occurred: %s' % error

Reemplaza lo siguiente:

  • PROJECT_NAME: El nombre o ID del proyecto de DNS
  • ZONE_NAME: El nombre de la zona administrada

¿Qué sigue?