Per proteggere il traffico tra pod in un cluster Kubernetes Antrea, è possibile creare criteri del firewall distribuito (criteri di sicurezza) in NSX e applicarli a uno o più cluster Kubernetes Antrea.

Nota: In questa documentazione si utilizza il termine "cluster Kubernetes Antrea" per indicare i cluster Kubernetes con la CNI di Antrea. Il termine "cluster Kubernetes" è un termine generico che rappresenta cluster Tanzu Kubernetes Grid (TKG) con la CNI di Antrea, cluster OpenShift con la CNI di Antrea o cluster Kubernetes fai da te (DIY) con la CNI di Antrea.

L'interfaccia utente di utilizza il termine "cluster di container Antrea" per alcuni campi o etichette dell'interfaccia utente. Nella sezione Procedura della presente documentazione, il termine "cluster di container Antrea" viene mantenuto per tali campi o etichette dell'interfaccia utente. Per tutto il testo libero, viene utilizzato il termine "cluster Kubernetes Antrea".

Prerequisiti

  • I cluster Kubernetes Antrea sono registrati in NSX.
  • Nella distribuzione di NSX applicare una licenza di sicurezza appropriata che autorizzi il sistema a configurare criteri di sicurezza del firewall distribuito.

Procedura

  1. Dal browser, accedere a NSX Manager all'indirizzo https://nsx-manager-ip-address.
  2. Fare clic sulla scheda Sicurezza e quindi in Gestione criteri fare clic su Firewall distribuito.
    Viene visualizzata la pagina Regole specifiche per una categoria.
    Nota: L'interfaccia utente di NSX Manager recupera le informazioni relative ai cluster Kubernetes di Antrea registrati quando si avvia l'applicazione NSX Manager nel browser. Se l'interfaccia utente dell'applicazione è già aperta, non recupera automaticamente le informazioni di registrazione del cluster Kubernetes Antrea. Questo comportamento è previsto e in base alla progettazione dell'interfaccia utente corrente. Se è stato registrato il primo cluster Kubernetes Antrea dopo l'apertura dell'applicazione NSX Manager, assicurarsi di aggiornare il browser dopo aver navigato nella pagina Regole specifiche per una categoria. L'aggiornamento manuale garantisce che gli elementi dell'interfaccia utente specifici di Antrea siano visibili nell'interfaccia utente quando si raggiunge il passaggio 4 di questa procedura.

    L'aggiornamento manuale del browser è necessario solo una volta e non ogni volta dopo la registrazione di un nuovo cluster Kubernetes Antrea in NSX.

  3. Selezionare la categoria in cui si desidera creare il criterio di sicurezza.
    Le regole del firewall di livello 2 (Ethernet) basate su indirizzi MAC non sono al momento supportate per i cluster Kubernetes Antrea. Le categorie in NSX corrispondono ai livelli in Antrea. I criteri di sicurezza vengono applicati nei cluster Kubernetes Antrea nell'ordine di precedenza decrescente seguente:
    • Categoria Emergenza (precedenza più alta)
    • Categoria Infrastruttura
    • Categoria Ambiente
    • Categoria Applicazione (precedenza più bassa)

    All'interno di una categoria le regole del firewall vengono elaborate dall'alto verso il basso nell'ordine in cui sono impostate. Le categorie forniscono un mezzo per organizzare le regole. Ad esempio, più ruoli utente (utenti tipo) possono creare criteri di sicurezza senza sostituire i criteri o creare criteri in conflitto. Ad esempio, un amministratore della sicurezza può creare criteri nella categoria Emergenza per regole specifiche di quarantena o autorizzazione. Uno sviluppatore di applicazioni può creare criteri nella categoria Applicazione per proteggere il traffico tra pod specifici di un'applicazione. Un amministratore di rete può creare criteri nella categoria Infrastruttura per definire le regole di accesso per i servizi condivisi, ad esempio DHCP, DNS, Active Directory e così via.

  4. Fare clic su Aggiungi criterio e specificare le impostazioni di configurazione del criterio.
    1. Immettere un nome univoco per il criterio.
    2. Per impostazione predefinita, il criterio viene applicato al firewall distribuito. Accanto a Si applica a fare clic sull'icona di modifica.
      Viene aperta la pagina Imposta ambito applicazione.
    3. Selezionare l'opzione Cluster di container Antrea.
    4. (Obbligatorio) Selezionare almeno un cluster per decidere l'estensione o l'ambito di applicazione del criterio di sicurezza.
      L'estensione del criterio può essere un singolo cluster di Kubernetes Antrea o più cluster Kubernetes Antrea.
    5. (Facoltativo) Limitare l'estensione del criterio selezionando gruppi Antrea.
      Quando si selezionano gruppi Antrea nel campo Si applica a di un criterio, questa configurazione viene utilizzata per tutte le regole del criterio. Per specificare un set di gruppi Antrea diverso per ogni regola del criterio, ignorare questo passaggio e compilare il campo Si applica a durante l'aggiunta delle regole nel criterio.
      Nota: I gruppi Antrea con indirizzi IP non devono essere utilizzati nel campo Si applica a del criterio perché NSX non è in grado di elaborare i membri del pod effettivi dagli indirizzi IP.
    6. (Facoltativo) Fare clic sull'icona a forma di ingranaggio nell'angolo all'estrema destra per specificare impostazioni di configurazione avanzate del criterio.
      Per i criteri di sicurezza applicati ai cluster Kubernetes Antrea, le impostazioni TCP restrittivo e Stateful sono disattivate. Queste impostazioni non sono attualmente supportate.

      Sono supportate solo le impostazioni Bloccato e Commenti. Per impostazione predefinita, un criterio non è bloccato. Per impedire a più utenti di apportare modifiche al criterio, attivare l'opzione Bloccato.

    7. Fare clic su Pubblica.
      È possibile aggiungere più criteri e quindi pubblicarli tutti insieme.

      Lo stato del criterio viene inizialmente impostato su In corso e, dopo che è stato realizzato correttamente nei cluster Kubernetes Antrea, lo stato diventa Operazione eseguita. Se la realizzazione del criterio non riesce a causa di un motivo qualsiasi, fare clic sullo stato Non riuscita per visualizzare gli errori in una finestra pop-up.

  5. Selezionare la casella di controllo accanto al nome del criterio e fare clic su Aggiungi regola. Immettere il nome della regola.
    Per impostazione predefinita, le colonne Origini, Destinazioni, Servizi e Si applica a della regola includono Qualsiasi.
    Nota: I profili di contesto non sono al momento supportati per le regole applicate a cluster Kubernetes Antrea.
  6. Specificare le impostazioni della regola.
    1. Nella colonna Origini o Destinazioni fare clic sull'icona di modifica e selezionare uno o più gruppi Antrea.
      Quando si specificano le origini e le destinazioni delle regole, si applicano i vincoli seguenti:
      • È possibile selezionare solo gruppi Antrea. I gruppi con membri di NSX non possono essere utilizzati in una regola. In altre parole, una regola non può contenere una combinazione di gruppi Antrea e gruppi di tipo Generico, Solo indirizzi IP.
      • Quando si selezionano gruppi nella colonna Origini, la colonna Destinazioni non è applicabile. È possibile aggiungere destinazioni nel campo Si applica a della regola.
      • Quando si selezionano gruppi nella colonna Destinazioni, la colonna Origini non è applicabile. È possibile aggiungere origini nel campo Si applica a della regola.

      Se si impostano i campi Origini e Si applica a nella regola, il traffico viene filtrato da Origini a Si applica a. Se si impostano i campi Destinazioni e Si applica a nella regola, il traffico viene filtrato da Si applica a a Destinazioni. Il percorso dei dati di Antrea esegue il filtro per i membri del gruppo Si applica a.

    2. (Facoltativo) Nella colonna Servizi fare clic sull'icona di modifica e selezionare i servizi.
      Se non viene selezionato alcun servizio, viene utilizzato il valore Qualsiasi.

      Quando si specificano i servizi, si applicano i vincoli seguenti:

      • Sono supportati solo i servizi TCP e UDP. Tutti gli altri servizi non sono supportati.
      • La combinazione di porta e protocollo RAW supporta solo i tipi di servizio TCP e UDP.
      • Sono supportate solo le porte di destinazione. Le porte di origine non sono supportate.
    3. Nella colonna Si applica a fare clic sull'icona di modifica e selezionare i gruppi Antrea a cui si desidera applicare la regola.

      Se non viene selezionato alcun gruppo, viene utilizzato il valore Qualsiasi.

      Nota:
      • I gruppi Antrea con indirizzi IP non devono essere utilizzati nel campo Si applica a della regola perché NSX non è in grado di elaborare i membri del pod effettivi dagli indirizzi IP.
      • Se si specificano gruppi Antrea nel campo Si applica a del criterio e della regola, i gruppi nel campo Si applica a del criterio hanno la precedenza sui gruppi nel campo Si applica a della regola.
    4. Dal menu a discesa Azione selezionare una di queste opzioni.
      Opzione Descrizione
      Consenti

      Consente a tutto il traffico L3 con l'origine, la destinazione e il protocollo specificati di passare attraverso il contesto del firewall corrente. I pacchetti che corrispondono alla regola e sono accettati, attraversano il cluster Kubernetes come se il firewall non fosse presente.

      Elimina

      Elimina i pacchetti con l'origine, la destinazione e il protocollo specificati. L'eliminazione di un pacchetto è un'azione invisibile all'utente senza alcuna notifica all'origine o alla destinazione. Con l'eliminazione del pacchetto viene riprovata la connessione finché non viene raggiunta la soglia dei tentativi ripetuti.

      Rifiuta

      Rifiuta i pacchetti con l'origine, la destinazione e il protocollo specificati. Il rifiuto di un pacchetto è un modo più gestibile per negare un pacchetto, perché invia al mittente un messaggio di destinazione irraggiungibile. Se il protocollo è TCP, viene inviato un messaggio TCP RST. I messaggi ICMP con codice vietato a livello amministrativo vengono inviati per UDP, ICMP e altre connessioni IP. Uno dei vantaggi dell'azione Rifiuta è che l'applicazione mittente viene informata che la connessione non può essere stabilita dopo un solo tentativo.

    5. Fare clic sull'interruttore per attivare o disattivare la regola.
      Per impostazione predefinita, la regola è attivata.
    6. (Facoltativo) Fare clic sull'icona a forma di ingranaggio per configurare le altre impostazioni della regola.
      Impostazione della regola Descrizione
      Registrazione Per impostazione predefinita, la registrazione è disattivata. I registri del firewall sono inclusi nei registri di Agente Antrea. Quando si crea una richiesta del bundle di supporto per il cluster Kubernetes Antrea e si selezionano i nodi dal cluster, il bundle di supporto include i registri di Agente Antrea per tali nodi.
      Direzione

      Si riferisce alla direzione del traffico dal punto di vista del pod di destinazione.

      La direzione della regola è di sola lettura nei casi seguenti e non può essere modificata:
      • Quando nella regola si specificano le origini, la direzione è In entrata.
      • Quando nella regola si specificano le destinazioni, la direzione è In uscita.

      La direzione della regola è modificabile quando le origini e le destinazioni sono impostate su Qualsiasi. In questo caso, la direzione predefinita è In entrata-In uscita. È tuttavia possibile modificare la direzione impostandola su In entrata o In uscita.

      Commenti

      Immettere eventuali note sulla regola, se necessario.

      Questi commenti non vengono propagati al cluster Kubernetes Antrea. I commenti della regola non vengono quindi visualizzati come annotazioni nelle specifiche di Criterio di rete cluster Antrea.

  7. Fare clic su Pubblica per eseguire il push delle regole nei cluster Kubernetes Antrea.
    È possibile aggiungere più regole e quindi pubblicarle insieme.
    Nota: Dopo che il criterio di sicurezza è stato realizzato nei cluster Kubernetes Antrea, non è possibile modificare il campo Si applica a del criterio. Ciò significa che NSX non consente di modificare l'estensione del criterio di sicurezza da Cluster di container Antrea a DFW o Gruppi.

risultati

Nei cluster Kubernetes Antrea si verificano i risultati seguenti:
  • Il plug-in di rete Antrea crea un criterio di rete del cluster corrispondente a ogni criterio del firewall distribuito applicato al cluster Kubernetes Antrea.
  • Se le regole contengono origini, in Criterio di rete cluster Antrea vengono create le regole di ingresso corrispondenti.
  • Se le regole contengono destinazioni, in Criterio di rete cluster Antrea vengono create le regole di uscita corrispondenti.
  • Se le regole contengono una configurazione Qualsiasi-Qualsiasi, Controller Antrea nel cluster divide la regola Qualsiasi-Qualsiasi in due regole, ovvero una regola di ingresso da Qualsiasi a Qualsiasi e un'altra regola di uscita da Qualsiasi a Qualsiasi.
Nota: Il plug-in di rete Antrea non impedisce di aggiornare o eliminare i criteri di rete del cluster Antrea dalla riga di comando di kubectl. È comunque sconsigliabile eseguire queste operazioni. Il motivo è che i criteri di sicurezza sono gestiti da NSX. Di conseguenza, Adattatore piano di controllo centrale nel cluster Kubernetes Antrea sovrascrive immediatamente le modifiche dei criteri apportate dalla riga di comando di kubectl. In altre parole, NSX è l'origine di riferimento dei criteri. Le modifiche apportate a questi criteri di rete del cluster tramite la riga di comando di kubectl non vengono visualizzate in NSX Manager.

Operazioni successive

Dopo aver realizzato correttamente i criteri di sicurezza nei cluster Kubernetes Antrea, è possibile eseguire le seguenti attività facoltative:

  • Verificare che i criteri di rete del cluster Antrea siano visualizzati nei cluster Kubernetes. Eseguire il comando di kubectl seguente in ogni cluster Kubernetes Antrea:
    $ kubectl get acnp
    Nota: Il parametro priority nei criteri di rete del cluster Antrea include un valore float. Questo risultato è previsto. Nell'interfaccia utente di NSX Manager non viene visualizza la priorità dei criteri del firewall distribuito. NSX assegna internamente un valore intero alla priorità di ogni criterio. Questo valore intero viene assegnato da un ampio intervallo. Ma il plug-in di rete Antrea assegna un numero float più piccolo (valore assoluto) alla priorità dei criteri di rete del cluster Antrea. Pertanto, i valori di priorità di NSX vengono normalizzati internamente in numeri float più piccoli. Tuttavia, l'ordine in cui vengono aggiunti i criteri in una categoria di firewall distribuito viene conservato per i criteri di rete del cluster Antrea.

    È inoltre possibile visualizzare i dettagli dei criteri di rete del cluster Antrea nell'inventario di NSX. In NSX Manager passare a Inventario > Container > Cluster. Espandere il nome del cluster e fare clic sul numero accanto a Criteri di rete cluster per visualizzare i dettagli dei criteri, incluse le specifiche YAML.

  • Visualizzare le statistiche dei criteri tramite NSX API:
    GET https://{nsx-mgr-ip}/api/v1/infra/domains{domain-id}/security-policies/{security-policy-name}/statistics?container_cluster_path=/infra/sites/{site-id}/enforcement-points/{enforcement-point-id}/cluster-control-planes/{cluster-name}
  • Visualizzazione delle statistiche della regola di runtime nell'interfaccia utente:
    1. In NSX Manager passare a Sicurezza > Firewall distribuito.
    2. Espandere il nome del criterio e quindi fare clic sull'icona del grafico nell'angolo all'estrema destra di ciascuna regola.
    3. Selezionare il cluster Kubernetes dal menu a discesa per visualizzare le statistiche della regola per ogni cluster Kubernetes.

      Le statistiche della regola vengono elaborate separatamente per ogni cluster Kubernetes in cui viene applicata la regola. Le statistiche non vengono aggregate per tutti i cluster Kubernetes e visualizzate nell'interfaccia utente. Le statistiche della regola vengono elaborate ogni minuto.