Crittografia del traffico da nodo di lavoro a nodo di lavoro con WireGuard

Infrastruttura classica Nuvola privata virtuale

È possibile crittografare i dati che scorrono tra i nodi worker del cluster utilizzando WireGuard.

  • Questa funzione cripta il traffico solo tra i nodi worker dello stesso cluster. Non cripta il traffico tra pod diversi sullo stesso nodo worker.
  • La crittografia da nodo di lavoro a nodo di lavoro con WireGuard è supportata sui cluster Kubernetes Service con nodi di lavoro che eseguono Ubuntu 20 o versioni successive.
  • WireGuard non è supportato sui lavoratori che hanno moduli di crittografia installati dall'utente.
  • WireGuard non è conforme a FIPS o FedRAMP.
  • Non è possibile modificare la configurazione di WireGuard dopo averla attivata. Tuttavia, è possibile disabilitarlo.

Per ulteriori informazioni su questa impostazione di configurazione, vedere Abilita WireGuard per un cluster nella documentazione di Calico.

Abilitazione della codifica WireGuard

  1. Immetti il seguente comando per abilitare WireGuard per il traffico tra i nodi di lavoro.

    kubectl patch felixconfiguration default --type='merge' -p '{"spec":{"wireguardEnabled":true}}'
    

    Output di esempio

    felixconfiguration.crd.projectcalico.org/default patched
    
  2. Verificare la configurazione esaminando felixconfiguration. Nell'output, trova la sezione WireGuard e verifica che wireguardEnabled: true.

    kubectl get felixconfiguration default -o yaml
    

    Output di esempio

    apiVersion: crd.projectcalico.org/v1
    kind: FelixConfiguration
    metadata:
      annotations:
        created-by: IBMCloudKubernetesService
        projectcalico.org/metadata: '{"uid":"8a21b69b-9ffb-451d-9619-0dd1605810dc","creationTimestamp":"2023-09-13T14:00:15Z"}'
      creationTimestamp: "2023-09-13T14:00:15Z"
      generation: 2
      name: default
      resourceVersion: "24839234"
      uid: ff0c79f3-5548-4db4-a22f-2f367282631d
    spec:
      bpfLogLevel: ""
      floatingIPs: Disabled
      logSeverityScreen: Info
      natPortRange: 32768:65535
      reportingInterval: 0s
      wireguardEnabled: true
    

Disabilitazione della codifica WireGuard

Se non hai più bisogno della crittografia worker - to - worker nel tuo cluster, puoi disabilitare WireGuard.

  1. Eseguire il seguente comando per disabilitare WireGuard.

    kubectl patch felixconfiguration default --type='merge' -p '{"spec":{"wireguardEnabled":false}}'
    

    Output di esempio

    felixconfiguration.crd.projectcalico.org/default patched
    
  2. Verificare che WireGuard sia disabilitato.

    kubectl get felixconfiguration default -o yaml
    

    Output di esempio

    apiVersion: crd.projectcalico.org/v1
    kind: FelixConfiguration
    metadata:
      annotations:
        created-by: IBMCloudKubernetesService
        projectcalico.org/metadata: '{"uid":"8a21b69b-9ffb-451d-9619-0dd1605810dc","creationTimestamp":"2023-09-13T14:00:15Z"}'
      creationTimestamp: "2023-09-13T14:00:15Z"
      generation: 3
      name: default
      resourceVersion: "24839453"
      uid: ff0c79f3-5548-4db4-a22f-2f367282631d
    spec:
      bpfLogLevel: ""
      floatingIPs: Disabled
      logSeverityScreen: Info
      natPortRange: 32768:65535
      reportingInterval: 0s
      wireguardEnabled: false