Migrer ou transférer des zones où DNSSEC est activé

Cette page explique comment migrer une zone où DNSSEC est activé au niveau du bureau d'enregistrement de noms de domaine entre Cloud DNS et d'autres fournisseurs d'hébergement DNS tout en conservant la chaîne de confiance DNSSEC.

Pour obtenir une présentation des concepts liés à DNSSEC, consultez la présentation de DNSSEC.

Avant de commencer

La migration DNSSEC est complexe et nécessite une coordination pour migrer une zone entre les opérateurs sans subir de panne. Lisez ce guide dans son intégralité avant de transférer ou de migrer une zone. Nous vous recommandons de tester le processus de migration sur une zone moins critique avant de tenter de migrer des zones de production critiques.

Coordonner avec les opérateurs DNS et le bureau d'enregistrement de noms de domaine

Pour éviter que les résolveurs de validation considèrent le domaine comme non valide, vous devez coordonner la migration avec les opérateurs DNS et le bureau d'enregistrement de noms de domaine. Cette étape vous permet d'établir et de maintenir une chaîne de confiance valide entre la zone parente et les clés gérées par les deux opérateurs DNS pendant la transition.

Si votre bureau d'enregistrement de noms de domaine propose également un hébergement DNS, vous devez contacter ce service pour migrer la chaîne de confiance DNSSEC. Si le bureau d'enregistrement n'accepte pas cette opération, vous ne pouvez pas migrer les serveurs de noms tout en conservant la chaîne de confiance DNSSEC.

Attendre l'expiration des caches du résolveur

Pendant la migration, après avoir effectué les mises à jour critiques des enregistrements, attendez que les caches du résolveur expirent. Cette étape permet d'éviter les erreurs de validation causées par d'anciens enregistrements mis en cache incohérents avec la zone mise à jour après la migration vers les nouveaux serveurs de noms.

Limites

La migration d'une zone DNSSEC présente les limites suivantes :

  • Vous ne pouvez migrer une zone tout en conservant la chaîne de confiance DNSSEC que si le nouvel opérateur et le bureau d'enregistrement sont compatibles avec la migration DNSSEC, y compris l'importation d'enregistrements DNSKEY, la définition de plusieurs enregistrements DS et la prévention de la rotation automatique des clés pendant la migration.

  • Vous devez utiliser le même algorithme pour les deux opérateurs, car les zones doivent être signées avec tous les algorithmes en cours d'utilisation. Pour en savoir plus, consultez la section 2.2 du document RFC 4035. Cloud DNS ne peut signer qu'avec un seul algorithme à la fois. Vous ne pouvez pas modifier les algorithmes pendant la migration entre les fournisseurs.

  • Vous devez pouvoir importer des enregistrements DNSKEY à partir de Cloud DNS dans la zone de l'autre opérateur et faire en sorte que ces enregistrements soient signés avec les clés de l'opérateur. Cloud DNS permet d'ajouter des enregistrements DNSKEY pour les zones en mode Transfer.

  • Vous devez pouvoir ajouter un deuxième enregistrement DS depuis Cloud DNS vers la zone parente. Le bureau d'enregistrement ou la zone parente doit autoriser les enregistrements DS correspondant aux clés publiques qui ne signent aucun enregistrement dans la zone enfant.

  • Vous devez pouvoir arrêter la rotation des clés automatisée par l'ancien ou le nouvel opérateur pour la zone jusqu'à la fin de la migration. Cloud DNS arrête automatiquement la rotation des clés pour les zones en mode Transfer.

Si le nouvel opérateur n'est pas compatible avec la migration, procédez comme suit :

  1. Désactivez DNSSEC au niveau de votre bureau d'enregistrement.
  2. Effectuez le transfert ou la migration.
  3. Activez DNSSEC.
  4. Activez DNSSEC au niveau de votre bureau d'enregistrement.

Pour obtenir une présentation sur DNSSEC et le transfert de domaine, ainsi que sur les failles potentielles, consultez l'article DNS/DNSSEC et les transferts de domaine, sont-ils compatibles ?

Migration entre les opérateurs

L'approche technique utilisée par Cloud DNS pour les migrations DNSSEC est la variante de renversement KSK Double-DS décrite dans l'annexe D de RFC 6781 de la documentation sur la variante de renversement pour les opérateurs coopératifs.

La migration DNSSEC fonctionne sans échange de clés privées ou de signatures entre les opérateurs DNS. À la place, les serveurs de noms existants et la zone parente pré-publient les enregistrements signés pour les clés publiques du nouvel opérateur, en plus des clés publiques de l'ancien opérateur. De même, les nouveaux serveurs de noms publient des enregistrements signés pour les clés de l'ancien opérateur, en plus des clés du nouvel opérateur.

Ces clés de l'autre opérateur sont signées, ce qui crée une approbation croisée entre les deux opérateurs et la zone parente. Ainsi, les résolveurs de validation peuvent utiliser les enregistrements d'un opérateur pour valider les réponses de l'autre opérateur. Ce processus permet la transition vers les nouveaux serveurs de noms d'opérateurs sans interruption.

Une fois ces enregistrements propagés, les résolveurs peuvent valider les réponses des deux opérateurs lors de la période de transition suivante, tandis que les nouveaux enregistrements de délégation du serveur de noms se propagent à tous les caches du résolveur.

Une fois que les enregistrements de serveur de noms mis à jour ont été propagés, vous pouvez finaliser la migration. Vous pouvez supprimer la zone enfant des anciens serveurs de noms et supprimer l'ancre de confiance de l'ancien opérateur dans la zone parente.

Effectuer la migration de zones DNSSEC signées vers Cloud DNS

Avant de commencer, lisez toutes les instructions. Vous devez également vérifier que votre fournisseur accepte la migration. Sinon, vous ne pouvez pas migrer la zone à l'aide de ce processus.

Pour effectuer la migration, procédez comme suit :

  1. Arrêtez la rotation des clés pour la zone sur l'ancien serveur de noms.

  2. Créez une zone DNSSEC signée en lui attribuant l'état DNSSEC Transfer. L'état Transfer arrête la rotation des clés et autorise l'importation DNSKEY.

    Vous devez utiliser les mêmes algorithmes que ceux utilisés par le fournisseur existant.

  3. Exportez vos fichiers de zone non signés, puis importez-les dans la nouvelle zone.

    Suivez les instructions de votre fournisseur pour exporter des données de zone.

    Vous pouvez inclure des clés DNSKEY à cette étape, mais n'incluez pas d'autres types d'enregistrements DNSSEC de la zone existante (CDS, CDNSKEY, NSEC, NSEC3, NSEC3PARAM ou RRSIG).

    Vous pouvez importer des zones à l'aide de la commande gcloud dns record-sets import.

  4. Récupérez les enregistrements DNSKEY précédents de l'ancien serveur de noms.

    Vous pouvez également utiliser dig ou delv pour rechercher des enregistrements DNSKEY, mais vous devez vérifier que les clés publiques renvoyées sont correctes et valides pour votre zone.

  5. Récupérez les nouveaux enregistrements DNSKEY à partir de Cloud DNS. En mode Transfer, les enregistrements DNSKEY apparaissent comme des enregistrements normaux dans la zone.

  6. Ajoutez les enregistrements DNSKEY existants à la zone Cloud DNS en plus des enregistrements DNSKEY générés automatiquement.

    Vous pouvez également importer des clés DNSKEY au cours de l'étape 3 et ignorer cette étape si votre fournisseur exporte les clés DNSKEY avec le reste des données de zone.

  7. Ajoutez les nouveaux enregistrements DNSKEY à partir de Cloud DNS dans la zone de l'opérateur existant. Veillez à signer à nouveau la zone si nécessaire.

  8. Ajoutez l'enregistrement DS pour la zone Cloud DNS à votre bureau d'enregistrement en plus de l'enregistrement DS existant.

  9. Attendez que les nouveaux enregistrements se propagent et que les anciens enregistrements expirent dans tous les caches du résolveur. Sinon, des données obsolètes peuvent entraîner des échecs de validation.

    Attendez que tous les événements suivants se produisent :

    • Les enregistrements se propagent à tous les serveurs de noms utilisés par l'ancien opérateur.

    • La valeur TTL du jeu d'enregistrements NS de la zone parente expire.

    • La valeur TTL du jeu d'enregistrements DS de la zone parente expire.

    • La valeur TTL du jeu d'enregistrements NS de la zone enfant expire au niveau de l'ancien opérateur.

    • La valeur TTL du jeu d'enregistrements DNSKEY de la zone enfant expire au niveau de l'ancien opérateur.

  10. Assurez-vous que la zone est prête en vérifiant que l'ancien opérateur diffuse tous les enregistrements DNSKEY et que la zone parente diffuse les deux enregistrements DS.

  11. Modifiez les délégations de serveurs de noms pour qu'elles pointent vers Cloud DNS.

    Mettez à jour les enregistrements de serveur de noms pour la nouvelle zone au niveau du bureau d'enregistrement à l'aide des informations relatives aux serveurs de noms Cloud DNS.

  12. Attendez que les nouveaux enregistrements de serveur de noms se propagent et que les anciens enregistrements de délégation expirent dans tous les caches du résolveur. Sinon, des données obsolètes peuvent entraîner des échecs de validation.

    Attendez que tous les événements suivants se produisent :

    • La valeur TTL du jeu d'enregistrements NS de la zone parente expire.

    • La valeur TTL du jeu d'enregistrements NS de la zone enfant expire au niveau de l'ancien opérateur.

    Après cette étape, vous pouvez arrêter en toute sécurité de diffuser la zone à l'ancien opérateur.

  13. Supprimez les enregistrements DNSKEY de l'ancienne zone ajoutés à la zone Cloud DNS.

  14. Passez l'état DNSSEC de la zone de Transfer à On.

    Le fait de quitter l'état de transfert active la rotation automatique des clés pour la zone. Vos zones peuvent quitter l'état de transfert DNSSEC en toute sécurité après une semaine. En outre, elles ne doivent pas rester à l'état de transfert DNSSEC pendant plus d'un mois ou deux.

  15. Supprimez l'enregistrement DS de la zone de l'ancien opérateur au niveau de votre bureau d'enregistrement.

Migrer des zones DNSSEC signées à partir de Cloud DNS

Avant de commencer la migration, lisez toutes les instructions. Vous devez également vérifier que votre fournisseur accepte la migration. Sinon, vous ne pouvez pas migrer la zone à l'aide de ce processus.

Pour effectuer la migration, procédez comme suit :

  1. Remplacez l'état DNSSEC On par Transfer. Cette étape arrête la rotation des clés.

  2. Exportez votre fichier de zone et importez-le dans le nouvel opérateur.

    Vous pouvez utiliser gcloud dns record-sets export pour exporter une zone.

    L'exportation d'une zone en mode Transfer exporte également les enregistrements DNSKEY à partir de Cloud DNS. Si votre fournisseur accepte DNSKEY à cette étape, vous pouvez les inclure maintenant et ignorer les étapes ci-dessous qui transfèrent les clés publiques de Cloud DNS vers le nouveau fournisseur.

  3. Signez la zone auprès du nouveau fournisseur.

    Vous devez vous servir des algorithmes utilisés par Cloud DNS sur le nouveau fournisseur.

    Vous devez arrêter la rotation des clés pour la zone du nouveau serveur de noms jusqu'à la fin de la migration.

  4. Récupérez les enregistrements DNSKEY à partir de Cloud DNS. En mode Transfer, les enregistrements DNSKEY apparaissent comme des enregistrements normaux dans la zone.

    Vous pouvez également utiliser dig ou delv pour interroger les serveurs de noms Cloud DNS sur les enregistrements DNSKEY, mais vous devez vérifier que les clés publiques renvoyées sont correctes et valides pour votre zone.

  5. Récupérez les nouveaux enregistrements DNSKEY à partir du nouvel opérateur.

    Vous devrez peut-être d'abord signer la zone ou configurer DNSSEC pour obtenir des clés.

  6. Ajoutez les enregistrements DNSKEY Cloud DNS à la zone du nouvel opérateur, en plus des enregistrements DNSKEY de la nouvelle zone.

  7. Ajoutez les enregistrements DNSKEY du nouvel opérateur à Cloud DNS.

  8. Ajoutez l'enregistrement DS pour la zone du nouvel opérateur à votre bureau d'enregistrement en plus de l'enregistrement DS existant de Cloud DNS.

  9. Attendez que les nouveaux enregistrements se propagent et que les anciens enregistrements expirent dans tous les caches du résolveur. Sinon, des données obsolètes peuvent entraîner des échecs de validation.

    Attendez que tous les événements suivants se produisent :

    • La valeur TTL du jeu d'enregistrements NS de la zone parente expire.

    • La valeur TTL du jeu d'enregistrements DS de la zone parente expire.

    • La valeur TTL du jeu d'enregistrements NS de la zone Cloud DNS expire.

    • La valeur TTL du jeu d'enregistrements DNSKEY de la zone Cloud DNS expire.

    Assurez-vous que la zone est prête en vérifiant que Cloud DNS diffuse tous les enregistrements DNSKEY et que la zone parente diffuse les deux enregistrements DS.

  10. Migrez les délégations de serveurs de noms pour qu'elles pointent vers le nouvel opérateur.

    Mettez à jour les enregistrements de serveur de noms pour la zone dans le bureau d'enregistrement sur les serveurs de noms du nouvel opérateur.

  11. Attendez que les nouveaux enregistrements de serveur de noms se propagent et que les anciens enregistrements de délégation expirent dans tous les caches du résolveur. Sinon, des données obsolètes peuvent entraîner des échecs de validation.

    Attendez que tous les éléments suivants expirent :

    • La valeur TTL du jeu d'enregistrements NS de la zone parente

    • La valeur TTL du jeu d'enregistrements NS de la zone Cloud DNS

    Après cette étape, vous pouvez supprimer la zone de Cloud DNS en toute sécurité.

  12. Supprimez les enregistrements DNSKEY de Cloud DNS ajoutés à la nouvelle zone.

  13. Supprimez l'enregistrement DS pour Cloud DNS de votre bureau d'enregistrement.

  14. Terminez la migration vers le nouvel opérateur si nécessaire.

Si l'autre opérateur DNS propose un processus de migration d'une zone DNSSEC signée, vous devez effectuer ces étapes en parallèle avec cette procédure, après avoir effectué l'étape 1 décrite ici.

Étapes suivantes