Considerazioni relative al gruppo di sicurezza Amazon EKS - Amazon EKS

Considerazioni relative al gruppo di sicurezza Amazon EKS

Nelle sezioni seguenti vengono descritte le impostazioni minime richieste e consigliate per i gruppi di sicurezza per il cluster, oltre che dei gruppi di sicurezza per il piano di controllo e per i nodi del cluster. Queste considerazioni dipendono dalla versione Kubernetes e dalla versione della piattaforma Amazon EKS che si sta utilizzando.

Importante

Se il cluster è stato configurato per l'utilizzo di IPv6, allora i gruppi di sicurezza devono consentire la comunicazione da e verso tutti gli indirizzi IPv4 e IPv6 con cui i pod comunicano.

Gruppo di sicurezza del cluster

Al momento della loro creazione, i cluster Amazon EKS, a partire dalla versione 1.14 di Kubernetes e della piattaforma eks.3, generano un gruppo di sicurezza del cluster. Ciò accade anche quando un cluster di una versione precedente viene aggiornato a questa versione Kubernetes e della piattaforma. Ciascun gruppo di sicurezza del cluster è progettato per consentire a tutto il traffico proveniente dal piano di controllo e dai gruppi di nodi gestiti di fluire liberamente tra loro. L'assegnazione del gruppo di sicurezza del cluster alle interfacce di rete elastiche create da Amazon EKS che permettono la comunicazione tra piano di controllo e istanze del gruppo di nodi gestiti consente di evitare la configurazione di regole di gruppo di sicurezza complesse per consentire questa comunicazione. Qualsiasi istanza o interfaccia di rete assegnata al gruppo di sicurezza può comunicare liberamente con altre risorse con questo gruppo di sicurezza.

È possibile verificare la presenza di un gruppo di sicurezza del cluster nella AWS Management Console nella sezione Networking (Rete) del cluster o con il seguente comando della AWS CLI:

aws eks describe-cluster --name my-cluster --query cluster.resourcesVpcConfig.clusterSecurityGroupId

È consigliabile aggiungere il gruppo di sicurezza del cluster a tutti i gruppi di nodi esistenti e futuri. Per ulteriori informazioni, consultare Gruppi di sicurezza per il VPC nella Guida per l'utente di Amazon VPC. I gruppi di nodi gestiti Amazon EKS vengono configurati automaticamente per utilizzare il gruppo di sicurezza del cluster.

Protocollo Porte Origine Destinazione

Traffico in entrata consigliato

Tutti

Tutti

Self

Traffico in uscita consigliato

Tutti

Tutti

0.0.0.0/0 (IPv4) o ::/0 (IPv6)

Limitazione del traffico cluster

Se è necessario limitare le porte aperte tra il piano di controllo e i nodi, è possibile modificare il gruppo di sicurezza del cluster predefinito per consentire solo le seguenti porte minime richieste. Le porte minime richieste sono le stesse delle versioni precedenti di Amazon EKS.

Protocollo Porta Origine Destinazione
Traffico in entrata minimo TCP

443

Gruppo di sicurezza del cluster
Traffico in entrata minimo* TCP

10250

Gruppo di sicurezza del cluster
CoreDNS TCP e UDP 53 Gruppo di sicurezza del cluster
Traffico in uscita minimo TCP

443

Gruppo di sicurezza del cluster

Traffico in uscita minimo* TCP

10250

Gruppo di sicurezza del cluster

DNS TCP e UDP 53 Gruppo di sicurezza del cluster

*Se necessario, andranno inclusi gli eventuali protocolli e porte che si prevede verranno utilizzate dai nodi per la comunicazione internodale. I nodi richiedono anche l'accesso a Internet in uscita verso le API di Amazon EKS per l'introspezione del cluster e la registrazione del nodo al momento del lancio o, in alternativa, che siano implementate le impostazioni necessarie in Cluster privati. Per estrarre le immagini container, i nodi richiedono l'accesso ad Amazon S3, alle API di Amazon ECR e a tutti gli altri registri del container da cui devono estrarre le immagini come, per esempio, DockerHub. Per ulteriori informazioni, consultare AWS Intervalli di indirizzi IP nella sezione AWS Riferimenti generali.

Gruppi di sicurezza del piano di controllo e dei nodi

Per i cluster Amazon EKS precedenti alla versione 1.14 di Kubernetes e alla versione della piattaforma eks.3, la comunicazione tra il piano di controllo e il nodo viene configurata creando manualmente un gruppo di sicurezza del piano di controllo e specificando tale gruppo di sicurezza quando si crea il cluster. Al momento della creazione del cluster, questo gruppo di sicurezza è stato quindi allegato alle interfacce di rete create da Amazon EKS che consentono la comunicazione tra il piano di controllo e i nodi. Queste interfacce di rete presentano Amazon EKS cluster name nella loro descrizione.

Nota

Nel caso si sia usato direttamente l'API o uno strumento come AWS CloudFormation per creare il cluster e non venga specificato un gruppo di sicurezza, il gruppo di sicurezza di default dell'ambiente VPC viene applicato alle interfacce di rete tra account del piano di controllo.

È possibile controllare il gruppo di sicurezza del piano di controllo per il cluster nella AWS Management Console nella sezione Networking (Rete) del cluster (elencata come Additional security groups (Gruppi di sicurezza aggiuntivi)) o con il seguente comando della AWS CLI:

aws eks describe-cluster --name my-cluster --query cluster.resourcesVpcConfig.securityGroupIds

Se si avviano i nodi con il modello AWS CloudFormation nella procedura guidata Guida introduttiva ad Amazon EKS, AWS CloudFormation modifica il gruppo di sicurezza del piano di controllo per consentire la comunicazione con i nodi. Amazon EKS consiglia vivamente di utilizzare un gruppo di sicurezza dedicato per ogni piano di controllo (uno per ogni cluster). Se si condivide un gruppo di sicurezza del piano di controllo con altri cluster o risorse Amazon EKS, è possibile bloccare o interrompere le connessioni a tali risorse.

Il gruppo di sicurezza per i nodi e il gruppo di sicurezza per la comunicazione tra piano di controllo e nodi sono stati impostati per evitare la comunicazione su porte privilegiate nei nodi. Se le applicazioni richiedono l'aggiunta di accesso in entrata e in uscita dal piano di controllo o dai nodi, aggiungere queste regole ai gruppi di sicurezza associati al tuo cluster. Per ulteriori informazioni, consultare Gruppi di sicurezza per il VPC nella Guida per l'utente di Amazon VPC.

Nota

Per consentire la funzionalità proxy su porte privilegiate o per eseguire personalmente i test di conformità CNCF, modificare i gruppi di sicurezza per il piano di controllo e i nodi. Il gruppo di sicurezza sul lato dei nodi deve consentire l'accesso in entrata per porte 0-65535 dal piano di controllo, mentre il lato del piano di controllo deve consentire l'accesso in uscita ai nodi di lavoro su porte 0-65535.

Gruppo di sicurezza del piano di controllo
Protocollo Intervallo porte Origine Destinazione
Traffico in entrata minimo

TCP

443

Tutti i gruppi di sicurezza del nodo

Quando l'accesso privato all'endpoint del cluster è abilitato: gli eventuali gruppi di sicurezza che generano traffico client del server API (ad esempio, comandi kubectl su un bastion host all'interno del VPC del cluster)

Traffico in entrata consigliato

TCP

443

Tutti i gruppi di sicurezza del nodo

Quando l'accesso privato all'endpoint del cluster è abilitato: gli eventuali gruppi di sicurezza che generano traffico client del server API (ad esempio, comandi kubectl su un bastion host all'interno del VPC del cluster)

Traffico in uscita minimo

TCP

10250

Tutti i gruppi di sicurezza del nodo

Traffico in uscita consigliato

TCP

1025-65535

Tutti i gruppi di sicurezza del nodo

Gruppo di sicurezza del nodo
Protocollo Intervallo porte Origine Destinazione
Traffico in entrata minimo (da altri nodi)

Qualsiasi protocollo che si prevede venga utilizzato dai nodi per la comunicazione tra nodi

Qualsiasi porta che si prevede venga utilizzata dai nodi di lavoro per la comunicazione tra nodi

Tutti i gruppi di sicurezza del nodo

CoreDNS TCP e UDP 53 Tutti i gruppi di sicurezza del nodo
Traffico in entrata minimo (dal piano di controllo)

TCP

10250

Gruppo di sicurezza del piano di controllo

Traffico in entrata consigliato

Tutti

TCP

Tutti

443, 1025-65535

Tutti i gruppi di sicurezza del nodo

Gruppo di sicurezza del piano di controllo

Traffico in uscita minimo*

TCP

443

Gruppo di sicurezza del piano di controllo

Traffico in uscita consigliato

Tutti

Tutti

0.0.0.0/0 (IPv4) o ::/0 (IPv6)

*I nodi di lavoro richiedono anche l'accesso alle API Amazon EKS per l'introspezione del cluster e la registrazione del nodo al momento del lancio, anche attraverso Internet o VPC. Per estrarre le immagini container, i nodi richiedono l'accesso alle API Amazon S3 ed Amazon ECR (e a tutti gli altri registri del container, come DockerHub). Per ulteriori informazioni, consultare AWS Intervalli di indirizzi IP nei Riferimenti generali AWS e Cluster privati.

Il seguente tag deve essere applicato ad uno e solo uno dei gruppi di sicurezza associati ai nodi. Per ulteriori informazioni sull'assegnazione dei tag, consultare Utilizzo di tag tramite la console.

Key (Chiave) Value (Valore)

kubernetes.io/cluster/cluster-name

owned