Effectuer une rotation des clés MACsec

Cette page explique comment effectuer une rotation des clés pour MACsec pour Cloud Interconnect.

Pour effectuer une rotation des clés, procédez comme suit :

  1. Créez une clé avec une date de début située après celle des clés existantes.
  2. Ajoutez la nouvelle clé à votre routeur sur site.
  3. Attendez l'heure de début de la nouvelle clé.
  4. Vérifiez que la nouvelle clé est active.
  5. Supprimez la clé la plus ancienne.

Vous pouvez créer jusqu'à cinq clés prépartagées avec des heures de début que vous spécifiez. Les heures de début des clés doivent être dans l'ordre croissant et ne pas se situer dans un délai de six heures après l'heure de début de la clé précédente. Pour effectuer la rotation d'une clé que vous ne souhaitez plus utiliser, supprimez-la.

Les clés prépartagées n'expirent pas. Lorsque vous configurez plusieurs clés, une heure de début doit être configurée pour chaque clé.

Rôles requis

Pour obtenir les autorisations nécessaires pour récupérer les clés MACsec, demandez à votre administrateur de vous accorder le rôle IAM Administrateur réseau Compute (roles/compute.networkAdmin) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

Si vous choisissez d'utiliser des rôles personnalisés, assurez-vous que votre rôle personnalisé pour l'administration de MACsec pour Cloud Interconnect inclut l'autorisation IAM compute.interconnects.getMacsecConfig.

Facultatif : Mettre à jour l'heure de début de la clé

Si vous disposez d'une clé sans heure de début et que vous essayez de créer une clé, Cloud Interconnect affiche une erreur. Pour corriger l'heure de début, sélectionnez l'une des options suivantes afin de définir une heure de début pour la clé existante:

Console

  1. Dans la console Google Cloud, accédez à l'onglet Connexions physiques de Cloud Interconnect.

    Accéder à l'onglet "Connexions physiques"

  2. Sélectionnez la connexion que vous souhaitez modifier.

  3. Dans l'onglet MACsec, accédez à la section Pre-shared keys (Clés prépartagées), puis cliquez sur Managed pré-shared keys (Clés prépartagées gérées).

  4. Dans le champ Heure de début, sélectionnez ou saisissez une nouvelle heure de début.

  5. Cliquez sur Submit (Envoyer)

gcloud

gcloud compute interconnects macsec update-key INTERCONNECT_CONNECTION_NAME \
    --key-name=KEY_NAME \
    --start-time=START_TIME

Remplacez les éléments suivants :

  • INTERCONNECT_CONNECTION_NAME : nom de votre connexion Cloud Interconnect
  • KEY_NAME : nom de la clé à mettre à jour
  • START_TIME : heure à partir de laquelle cette clé est valide au format ISO 8601, par exemple 2023-07-01T21:00:01.000Z.

Créer une clé

  1. Pour ajouter une clé, sélectionnez l'une des options suivantes:

    Console

    1. Dans la console Google Cloud, accédez à l'onglet Connexions physiques de Cloud Interconnect.

      Accéder à l'onglet "Connexions physiques"

    2. Sélectionnez la connexion que vous souhaitez modifier.

    3. Dans l'onglet MACsec, accédez à la section Pre-shared keys (Clés prépartagées), puis cliquez sur Managed pré-shared keys (Clés prépartagées gérées).

    4. Cliquez sur Ajouter une clé.

    5. Spécifiez les détails de la clé pré-partagée:

      • Nom de la clé:nom de la clé Ce nom est affiché dans la console Google Cloud et permet à la CLI gcloud de référencer la clé, telle que psk-2.

      • Heure de début:heure à partir de laquelle la clé est valide. Assurez-vous que l'heure de début de la nouvelle clé pré-partagée est au moins six heures après l'heure de début de la clé précédente.

    6. Pour ajouter des clés prépartagées supplémentaires, cliquez sur Add key (Ajouter une clé). Les clés prépartagées consécutives doivent avoir des heures de début d'au moins six heures d'intervalle.

    7. Cliquez sur Submit (Envoyer).

    gcloud

    gcloud compute interconnects macsec add-key INTERCONNECT_CONNECTION_NAME \
        --key-name=KEY_NAME \
        --start-time="START_TIME"
    

    Remplacez les éléments suivants :

    • INTERCONNECT_CONNECTION_NAME : nom de votre connexion Cloud Interconnect
    • KEY_NAME : nom de la clé
    • START_TIME : heure à partir de laquelle cette clé est valide au format ISO 8601 (par exemple, 2023-07-01T21:00:01.000Z)

    La bonne pratique que nous vous recommandons consiste à définir une heure de début pour chaque clé que vous créez pour MACsec pour Cloud Interconnect.

  2. Pour répertorier les clés existantes et noter la clé d'association de connectivité de la nouvelle clé (CAK) et le nom de la clé d'association de connectivité (CKN), sélectionnez l'une des options suivantes:

    Console

    1. Dans la section Clés prépartagées, recherchez le nom de la clé prépartagée que vous avez ajoutée, puis cliquez sur Afficher. Une fenêtre affiche la clé d'association de connectivité (CAK) et le nom de la clé d'association de connectivité (CKN). Cliquez sur Copier à côté de l'une des valeurs pour copier la valeur dans le presse-papiers de votre ordinateur.

    2. Cliquez sur Fermer.

    gcloud

    gcloud compute interconnects macsec get-config INTERCONNECT_CONNECTION_NAME
    

    Le résultat ressemble à ce qui suit :

    preSharedKeys:
    - name: key1
      ckn: 0101010189abcdef...0123456789abcdef
      cak: 0123456789abcdef...0123456789abcdef
      startTime: 2023-07-01T12:12:12Z
    - name: key2
      ckn: 0202020289abcdef...0123456789abcdef
      cak: 0123456889abcdef...0123456789abcdef
      startTime: 2023-08-01T12:12:12Z
    

    Dans cet exemple, key2 correspond à la clé nouvellement ajoutée.

  3. Ajoutez l'heure de début, la valeur CAK et la valeur CKN de la nouvelle clé à la configuration de votre routeur sur site.

Les routeurs périphériques de Google utilisent la clé avec la date de début la plus récente et passent automatiquement à la clé suivante au fur et à mesure de l'écoulement du temps. Toutes les clés configurées ont des délais d'expiration infinis. En d'autres termes, pour effectuer une rotation des clés, vous devez supprimer l'ancienne clé que vous ne souhaitez pas utiliser.

Valider la clé active

Procédez comme suit :

  1. Pour répertorier les clés existantes, sélectionnez l'une des options suivantes:

    Console

    1. Dans la console Google Cloud, accédez à l'onglet Connexions physiques de Cloud Interconnect.

      Accéder à l'onglet "Connexions physiques"

    2. Sélectionnez la connexion que vous souhaitez afficher.

    3. Dans l'onglet MACsec, la section Pre-shared keys (Clés prépartagées) répertorie toutes les clés prépartagées pour cette connexion.

    gcloud

    gcloud compute interconnects macsec get-config INTERCONNECT_CONNECTION_NAME
    

    Le résultat ressemble à ce qui suit :

    preSharedKeys:
    - name: key1
      ckn: 0101010189abcdef...0123456789abcdef
      cak: 0123456789abcdef...0123456789abcdef
      startTime: 2023-07-01T12:12:12Z
    - name: key2
      ckn: 0202020289abcdef...0123456789abcdef
      cak: 0123456889abcdef...0123456789abcdef
      startTime: 2023-08-01T12:12:12Z
    

    Notez la valeur CKN de la clé répertoriée avant la dernière clé.

  2. Pour vérifier que la clé active est répertoriée avant de supprimer l'ancienne clé, sélectionnez l'une des options suivantes:

    Console

    • Dans la section Clés prépartagées, vérifiez que la nouvelle clé affiche l'état de la clé active, en cours d'utilisation.

    gcloud

    gcloud compute interconnects get-diagnostics INTERCONNECT_CONNECTION_NAME
    

    Le résultat ressemble à ce qui suit :

    bundleAggregationType: BUNDLE_AGGREGATION_TYPE_STATIC
    bundleOperationalStatus: BUNDLE_OPERATIONAL_STATUS_UP
    links:
    - circuitId: LOOP-0
      googleDemarc: fake-local-demarc-0
      lacpStatus:
        googleSystemId: '00:11:22:33:44:55'
        neighborSystemId: '55:44:33:22:11:00'
        state: ACTIVE
      macsec:
        ckn: 0202020289abcdef...0123456789abcdef
        operational: true
      operationalStatus: LINK_OPERATIONAL_STATUS_UP
      receivingOpticalPower:
        state: OK
        value: -2.49
      transmittingOpticalPower:
        state: OK
        value: -0.88
    macAddress: 00:11:22:33:44:55
    

    La commande gcloud compute interconnects get-diagnostics affiche la valeur CKN de la clé active. Si plusieurs clés sont configurées, la clé avec la dernière heure de début est sélectionnée comme clé active. Les routeurs périphériques de Google rejettent toutes les nouvelles sessions MACsec qui tentent d'utiliser les anciennes clés.

Supprimer l'ancienne clé

Par mesure de sécurité, MACsec pour Cloud Interconnect vous empêche de supprimer la dernière clé active.

Pour supprimer l'ancienne clé, procédez comme suit :

  1. Supprimez l'ancienne clé de la configuration de votre routeur sur site. Cela garantit que l'ancienne clé n'est pas utilisée par votre routeur sur site avant de supprimer l'ancienne clé de Cloud Interconnect.

  2. Pour supprimer l'ancienne clé de votre configuration de connexion Cloud Interconnect, sélectionnez l'une des options suivantes:

    Console

    1. Dans la console Google Cloud, accédez à l'onglet Connexions physiques de Cloud Interconnect.

      Accéder à l'onglet "Connexions physiques"

    2. Sélectionnez la connexion que vous souhaitez afficher.

    3. Dans l'onglet MACsec, accédez à Pre-shared keys (clés prépartagées), sélectionnez la clé à supprimer, puis cliquez sur Delete (Supprimer).

    4. Dans la section Clés prépartagées, vérifiez que la nouvelle clé affiche l'état de la clé Actif, en cours d'utilisation, et que la clé que vous souhaitez supprimer ne figure plus dans la section.

    gcloud

    1. Exécutez la commande suivante :

      gcloud compute interconnects macsec remove-key INTERCONNECT_CONNECTION_NAME \
          --key-name=KEY_NAME
      

      Remplacez les éléments suivants :

      • INTERCONNECT_CONNECTION_NAME : nom de votre connexion Cloud Interconnect
      • KEY_NAME : nom de votre clé
    2. Pour vérifier que la clé a été supprimée, exécutez la commande suivante:

      gcloud compute interconnects macsec get-config INTERCONNECT_CONNECTION_NAME
      

      Le résultat ressemble à ce qui suit :

      preSharedKeys:
      - name: key2
        ckn: 0202020289abcdef...0123456789abcdef
        cak: 0123456889abcdef...0123456789abcdef
        startTime: 2023-08-01T12:12:12Z
      

Étape suivante