Criptografando o tráfego de trabalhador para trabalhador com WireGuard

Infraestrutura clássica Nuvem privada virtual

Você pode criptografar os dados que fluem entre os nós de trabalho em seu cluster usando WireGuard.

  • Esse recurso criptografa o tráfego somente entre nós de trabalho no mesmo cluster. Ele não criptografa o tráfego entre pods diferentes no mesmo nó de trabalho.
  • A criptografia de trabalhador para trabalhador com WireGuard é suportada em clusters do Kubernetes Service com trabalhadores que executam Ubuntu 20 ou mais recente.
  • WireGuard não é compatível com os trabalhadores que têm módulos de criptografia instalados pelo usuário.
  • WireGuard não está em conformidade com FIPS ou FedRAMP.
  • Não é possível alterar a configuração do WireGuard depois de ativá-lo. No entanto, é possível desativá-lo (a)

Para obter mais informações sobre essa definição de configuração, consulte Ativar WireGuard para um cluster na documentação Calico.

Ativando a criptografia do WireGuard

  1. Execute o comando a seguir para ativar o WireGuard para tráfego de trabalhador para trabalhador.

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

    Saída de exemplo

    felixconfiguration.crd.projectcalico.org/default patched
    
  2. Verifique sua configuração revisando felixconfiguration. Na saída, localize a seção WireGuard e verifique se wireguardEnabled: true

    kubectl get felixconfiguration default -o yaml
    

    Saída de exemplo

    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
    

Desativando a criptografia do WireGuard

Se você não precisar mais de criptografia de trabalhador para trabalhador em seu cluster, poderá desativar o WireGuard.

  1. Execute o seguinte comando para desativar o WireGuard.

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

    Saída de exemplo

    felixconfiguration.crd.projectcalico.org/default patched
    
  2. Verifique se o WireGuard está desativado.

    kubectl get felixconfiguration default -o yaml
    

    Saída de exemplo

    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