Questo documento introduce il CIS Kubernetes Benchmark, spiega come verificare la conformità al benchmark e spiega cosa configura Google Distributed Cloud quando non puoi implementare un suggerimento autonomamente.
Informazioni sui CIS Benchmarks
Center for Internet Security (CIS) rilascia dei benchmark per fornire consigli sulla sicurezza basati sulle best practice. CIS Kubernetes Benchmark offre una serie di suggerimenti per configurare Kubernetes al fine di supportare una solida postura di sicurezza. Il benchmark è collegato a una specifica release di Kubernetes. Il CIS Kubernetes Benchmark è scritto per la distribuzione open source di Kubernetes ed è pensato per essere il più possibile applicabile a tutte le distribuzioni.
Accedi al benchmark
CIS Kubernetes Benchmark è disponibile sul sito web di CIS.
Livelli dei consigli
La seguente tabella descrive i livelli di suggerimento nel benchmark CIS Kubernetes.
Livello | Descrizione |
---|---|
Livello 1 | I consigli hanno lo scopo di: |
Livello 2 | Estende il profilo del livello 1. I consigli presentano una o più delle seguenti caratteristiche: |
Stato della valutazione
Per ogni consiglio è incluso uno stato di valutazione. Lo stato della valutazione indica se il suggerimento dato può essere automatizzato o se l'implementazione richiede passaggi manuali. Entrambi gli stati sono ugualmente importanti e sono determinati e supportati come definito nelle seguenti tabelle:
Google Distributed Cloud 1.29
Versioni
Questa sezione fa riferimento alle seguenti versioni:
Versione Anthos | Versione di Kubernetes | Versione del benchmark CIS per Kubernetes |
---|---|---|
1,29 | 1.29.4 | v0.7.3 |
Stato del cluster di amministrazione Google Distributed Cloud
# | Suggerimento | Livello | Stato |
---|---|---|---|
1 | Configurazione della sicurezza del piano di controllo | ||
1,10 | File di configurazione dei nodi del piano di controllo | ||
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.2 | Assicurati che la proprietà del file delle specifiche dei pod del server API sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.4 | Assicurati che la proprietà del file delle specifiche del pod del gestore del controller sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.6 | Assicurati che la proprietà del file delle specifiche dei pod dello scheduler sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.8 | Assicurati che la proprietà del file delle specifiche del pod etcd sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.9 | Assicurati che le autorizzazioni dei file dell'interfaccia di rete del container siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Conforme |
1.1.10 | Assicurati che la proprietà del file dell'interfaccia di rete del container sia impostata su root:root (Manuale) |
L1 | Conforme |
1.1.11 | Assicurati che le autorizzazioni per la directory dei dati etcd siano impostate su 700 o su un valore più restrittivo (automatico) |
L1 | Conforme |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente |
1.1.13 | Assicurati che le autorizzazioni del file admin.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.14 | Assicurati che la proprietà del file admin.conf sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.15 | Assicurati che le autorizzazioni del file scheduler.conf siano impostate su 600 o più restrittive (automatiche) |
L1 | Conforme |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.17 | Assicurati che le autorizzazioni del file controller-manager.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.19 | Assicurati che la directory PKI di Kubernetes e la proprietà del file siano impostate su root:root (Automatico) |
L1 | Conforme |
1.1.20 | Assicurati che le autorizzazioni del file del certificato PKI di Kubernetes siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
1.1.21 | Assicurati che le autorizzazioni del file di chiave PKI di Kubernetes siano impostate su 600 (Manuale) |
L1 | Conforme |
1,20 | Server API | ||
1.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Manuale) |
L1 | Conforme |
1.2.2 | Assicurati che il parametro --token-auth-file non sia impostato (Automatico) |
L1 | Conforme |
1.2.3 | Assicurati che --DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso |
1.2.4 | Assicurati che gli argomenti --kubelet-client-certificate e --kubelet-client-key siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.5 | Assicurati che l'argomento --kubelet-certificate-authority sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.6 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
1.2.7 | Assicurati che l'argomento --authorization-mode includa il nodo (automatico) |
L1 | Conforme |
1.2.8 | Assicurati che l'argomento --authorization-mode includa RBAC (automatico) |
L1 | Conforme |
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso |
1.2.10 | Assicurati che il plug-in di controllo di ammissione AlwaysAdmit non sia impostato (automatico) | L1 | Conforme |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente |
1.2.13 | Assicurati che il plug-in di controllo di ammissione ServiceAccount sia impostato (automatico) | L1 | Conforme |
1.2.14 | Assicurati che il plug-in di controllo di ammissione NamespaceLifecycle sia impostato (automatico) | L1 | Conforme |
1.2.15 | Assicurati che il plug-in di controllo di ammissione NodeRestriction sia impostato (automatico) | L1 | Conforme |
1.2.16 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.2.17 | Assicurati che l'argomento --audit-log-path sia impostato (Automatico) |
L1 | Conforme |
1.2.18 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.19 | Assicurati che l'argomento --audit-log-maxbackup sia impostato su 10 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.20 | Assicurati che l'argomento --audit-log-maxsize sia impostato su 100 o come appropriato (Automatico) |
L1 | Conforme |
1.2.21 | Assicurati che l'argomento --request-timeout sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.22 | Assicurati che l'argomento --service-account-lookup sia impostato su true (automatico) |
L1 | Conforme |
1.2.23 | Assicurati che l'argomento --service-account-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.24 | Assicurati che gli argomenti --etcd-certfile e --etcd-keyfile siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.25 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.26 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.27 | Assicurati che l'argomento --etcd-cafile sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.28 | Assicurati che l'argomento --encryption-provider-config sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.29 | Assicurati che i provider di crittografia siano configurati in modo appropriato (manuale) | L1 | Conforme |
1.2.30 | Assicurati che il server API utilizzi solo crittografie crittografiche efficaci (manuali) | L1 | Conforme |
1,30 | Responsabile del titolare | ||
1.3.1 | Assicurati che l'argomento --terminated-pod-gc-threshold sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.3.2 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.3.3 | Assicurati che l'argomento --use-service-account-credentials sia impostato su true (automatico) |
L1 | Conforme |
1.3.4 | Assicurati che l'argomento --service-account-private-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.5 | Assicurati che l'argomento --root-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.6 | Assicurati che l'argomento PivotKubeletServerCertificate sia impostato su true (Automated) (Automatico) | L2 | Conforme |
1.3.7 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme |
1,40 | Programmatore | ||
1.4.1 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.4.2 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme |
2 | Configurazione del nodo Etcd | ||
2 | Configurazione del nodo Etcd | ||
2.1 | Assicurati che gli argomenti --cert-file e --key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2.2 | Assicurati che l'argomento --client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2.3 | Assicurati che l'argomento --auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2,4 | Assicurati che gli argomenti --peer-cert-file e --peer-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2,5 | Assicurati che l'argomento --peer-client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2,6 | Assicurati che l'argomento --peer-auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2.7 | Assicurati di utilizzare un'autorità di certificazione univoca per etcd (manuale) | L2 | Conforme |
3 | Configurazione del piano di controllo | ||
3,10 | Autenticazione e autorizzazione | ||
3.1.1 | L'autenticazione del certificato client non deve essere utilizzata per gli utenti (manuale) | L2 | Conforme |
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3,20 | Logging | ||
3.2.1 | Assicurati che venga creato un criterio di controllo minimo (manuale) | L1 | Conforme |
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente |
Descrizioni di errori e controlli equivalenti per il cluster di amministrazione Google Distributed Cloud
# | Suggerimento | Livello | Stato | Valore | Motivazione |
---|---|---|---|---|---|
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod del server API del cluster utente viene archiviata in etcd. |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod del gestore del controller del cluster utente viene archiviata in etcd. |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod scheduler del cluster utente viene archiviata in etcd. |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica etcd del cluster utente viene archiviata nel cluster di amministrazione etcd. |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente | 2001:2001 |
Il container etcd viene eseguito come 2001 e la directory dei dati etcd è di proprietà di 2001:2001 . |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente | 2000:2000 |
Il container kube-scheduler viene eseguito come 2000 e questo file è di proprietà di 2000:2000 . |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente | 2002:2002 |
Il container controller-manager viene eseguito come 2002 e questo file è di proprietà di 2002:2002. |
1.2.3 | Assicurati che -- DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso | ||
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente | non impostato | Il controller di ammissione AlwaysPullImages fornisce una certa protezione per le immagini di registro private nei cluster multitenant non cooperativi, al costo di rendere i registri di container un single point of failure per la creazione di nuovi pod nell'intero cluster. Google Distributed Cloud non abilita il controller di ammissione AlwaysPullImages, di conseguenza spetta agli amministratori del cluster l'implementazione dei criteri di ammissione per scendere a compromessi. |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente | non impostato | PodSecurityPolicy verrà rimosso da Kubernetes nella versione 1.25. In sostituzione, Pod Security Admission è abilitato per impostazione predefinita a partire dalla versione 1.23. |
1.2.18 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente | non impostato | Google Distributed Cloud acquisisce gli audit log, ma non utilizza questi flag per i controlli. Per ulteriori dettagli, vedi i criteri di controllo di Google Distributed Cloud. |
1.2.19 | Assicurati che l'argomento --audit-log-maxbackup sia impostato su 10 o come appropriato (Automatico) |
L1 | Controllo equivalente | non impostato | Google Distributed Cloud acquisisce gli audit log, ma non utilizza questi flag per i controlli. Per ulteriori dettagli, vedi i criteri di controllo di Google Distributed Cloud. |
1.3.7 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme | ||
1.4.2 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme | ||
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso | ||
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso | ||
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente | non impostato | Google Distributed Cloud acquisisce gli audit log, ma non utilizza questi flag per i controlli. Per ulteriori dettagli, vedi i criteri di controllo di Google Distributed Cloud. |
Stato del cluster utente Google Distributed Cloud
# | Suggerimento | Livello | Stato |
---|---|---|---|
1 | Configurazione della sicurezza del piano di controllo | ||
1,10 | File di configurazione dei nodi del piano di controllo | ||
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.2 | Assicurati che la proprietà del file delle specifiche dei pod del server API sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.4 | Assicurati che la proprietà del file delle specifiche del pod del gestore del controller sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.6 | Assicurati che la proprietà del file delle specifiche dei pod dello scheduler sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.8 | Assicurati che la proprietà del file delle specifiche del pod etcd sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.9 | Assicurati che le autorizzazioni dei file dell'interfaccia di rete del container siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Conforme |
1.1.10 | Assicurati che la proprietà del file dell'interfaccia di rete del container sia impostata su root:root (Manuale) |
L1 | Conforme |
1.1.11 | Assicurati che le autorizzazioni per la directory dei dati etcd siano impostate su 700 o su un valore più restrittivo (automatico) |
L1 | Conforme |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente |
1.1.13 | Assicurati che le autorizzazioni del file admin.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.14 | Assicurati che la proprietà del file admin.conf sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.15 | Assicurati che le autorizzazioni del file scheduler.conf siano impostate su 600 o più restrittive (automatiche) |
L1 | Conforme |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.17 | Assicurati che le autorizzazioni del file controller-manager.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.19 | Assicurati che la directory PKI di Kubernetes e la proprietà del file siano impostate su root:root (Automatico) |
L1 | Conforme |
1.1.20 | Assicurati che le autorizzazioni del file del certificato PKI di Kubernetes siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
1.1.21 | Assicurati che le autorizzazioni del file di chiave PKI di Kubernetes siano impostate su 600 (Manuale) |
L1 | Conforme |
1,20 | Server API | ||
1.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Manuale) |
L1 | Conforme |
1.2.2 | Assicurati che il parametro --token-auth-file non sia impostato (Automatico) |
L1 | Conforme |
1.2.3 | Assicurati che --DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso |
1.2.4 | Assicurati che gli argomenti --kubelet-client-certificate e --kubelet-client-key siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.5 | Assicurati che l'argomento --kubelet-certificate-authority sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.6 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
1.2.7 | Assicurati che l'argomento --authorization-mode includa il nodo (automatico) |
L1 | Conforme |
1.2.8 | Assicurati che l'argomento --authorization-mode includa RBAC (automatico) |
L1 | Conforme |
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso |
1.2.10 | Assicurati che il plug-in di controllo di ammissione AlwaysAdmit non sia impostato (automatico) | L1 | Conforme |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente |
1.2.13 | Assicurati che il plug-in di controllo di ammissione ServiceAccount sia impostato (automatico) | L1 | Conforme |
1.2.14 | Assicurati che il plug-in di controllo di ammissione NamespaceLifecycle sia impostato (automatico) | L1 | Conforme |
1.2.15 | Assicurati che il plug-in di controllo di ammissione NodeRestriction sia impostato (automatico) | L1 | Conforme |
1.2.16 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.2.17 | Assicurati che l'argomento --audit-log-path sia impostato (Automatico) |
L1 | Conforme |
1.2.18 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.19 | Assicurati che l'argomento --audit-log-maxbackup sia impostato su 10 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.20 | Assicurati che l'argomento --audit-log-maxsize sia impostato su 100 o come appropriato (Automatico) |
L1 | Conforme |
1.2.21 | Assicurati che l'argomento --request-timeout sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.22 | Assicurati che l'argomento --service-account-lookup sia impostato su true (automatico) |
L1 | Conforme |
1.2.23 | Assicurati che l'argomento --service-account-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.24 | Assicurati che gli argomenti --etcd-certfile e --etcd-keyfile siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.25 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.26 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.27 | Assicurati che l'argomento --etcd-cafile sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.28 | Assicurati che l'argomento --encryption-provider-config sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.29 | Assicurati che i provider di crittografia siano configurati in modo appropriato (manuale) | L1 | Conforme |
1.2.30 | Assicurati che il server API utilizzi solo crittografie crittografiche efficaci (manuali) | L1 | Conforme |
1,30 | Responsabile del titolare | ||
1.3.1 | Assicurati che l'argomento --terminated-pod-gc-threshold sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.3.2 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.3.3 | Assicurati che l'argomento --use-service-account-credentials sia impostato su true (automatico) |
L1 | Conforme |
1.3.4 | Assicurati che l'argomento --service-account-private-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.5 | Assicurati che l'argomento --root-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.6 | Assicurati che l'argomento PivotKubeletServerCertificate sia impostato su true (Automated) (Automatico) | L2 | Conforme |
1.3.7 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme |
1,40 | Programmatore | ||
1.4.1 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.4.2 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme |
2 | Configurazione del nodo Etcd | ||
2 | Configurazione del nodo Etcd | ||
2.1 | Assicurati che gli argomenti --cert-file e --key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2.2 | Assicurati che l'argomento --client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2.3 | Assicurati che l'argomento --auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2,4 | Assicurati che gli argomenti --peer-cert-file e --peer-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2,5 | Assicurati che l'argomento --peer-client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2,6 | Assicurati che l'argomento --peer-auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2.7 | Assicurati di utilizzare un'autorità di certificazione univoca per etcd (manuale) | L2 | Conforme |
3 | Configurazione del piano di controllo | ||
3,10 | Autenticazione e autorizzazione | ||
3.1.1 | L'autenticazione del certificato client non deve essere utilizzata per gli utenti (manuale) | L2 | Conforme |
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3,20 | Logging | ||
3.2.1 | Assicurati che venga creato un criterio di controllo minimo (manuale) | L1 | Conforme |
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente |
4 | Configurazione della sicurezza del nodo worker | ||
4,10 | File di configurazione dei nodi worker | ||
4.1.1 | Assicurati che le autorizzazioni dei file del servizio kubelet siano impostate su 600 o più restrittive (automatiche) |
L1 | Non conforme |
4.1.2 | Assicurati che la proprietà dei file del servizio kubelet sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.3 | Se esiste un file kubeconfig del proxy, assicurati che le autorizzazioni siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Avviso |
4.1.4 | Se esiste un file kubeconfig del proxy, assicurati che la proprietà sia impostata su root:root (Manuale) |
L1 | Avviso |
4.1.5 | Assicurati che le autorizzazioni del file kubelet.conf --kubeconfig siano impostate su 600 o su un valore più restrittivo (automatizzato) |
L1 | Conforme |
4.1.6 | Assicurati che la proprietà del file kubelet.conf --kubeconfig sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.7 | Assicurati che le autorizzazioni dei file delle autorità di certificazione siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
4.1.8 | Assicurati che la proprietà del file delle autorità di certificazione client sia impostata su root:root (manuale) |
L1 | Conforme |
4.1.9 | Se il file di configurazione YAML kubelet config. viene utilizzato, convalida le autorizzazioni impostate su 600 o su un valore più restrittivo (automatico) |
L1 | Non conforme |
4.1.10 | Se il file di configurazione YAML kubelet config. viene utilizzato, convalida la proprietà del file è impostato su root:root (automatico) |
L1 | Conforme |
4,20 | Kubelet | ||
4.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Automatico) |
L1 | Conforme |
4.2.2 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
4.2.3 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
4.2.4 | Verifica che l'argomento --read-only-port sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.5 | Assicurati che l'argomento --streaming-connection-idle-timeout non sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.6 | Assicurati che l'argomento --make-iptables-util-chains sia impostato su true (automatico) |
L1 | Conforme |
4.2.7 | Assicurati che l'argomento --hostname-override non sia impostato (Manuale) |
L1 | Conforme |
4.2.8 | Assicurati che l'argomento eventRecordQPS sia impostato su un livello che garantisca l'acquisizione appropriata degli eventi (manuale) | L1 | Conforme |
4.2.9 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (manuale) |
L2 | Controllo equivalente |
4.2.10 | Assicurati che l'argomento --rotate-certificates non sia impostato su false (automatico) |
L1 | Conforme |
4.2.11 | Verifica che l'argomento RuotaKubeletServerCertificate sia impostato su true (Manuale) | L1 | Conforme |
4.2.12 | Assicurati che Kubelet utilizzi solo crittografie crittografiche efficaci (manuale) | L1 | Conforme |
4.2.13 | Assicurati che sia impostato un limite per i PID dei pod (manuale) | L1 | Conforme |
Descrizioni di errori e controlli equivalenti per il cluster utente Google Distributed Cloud
# | Suggerimento | Livello | Stato |
---|---|---|---|
1 | Configurazione della sicurezza del piano di controllo | ||
1,10 | File di configurazione dei nodi del piano di controllo | ||
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.2 | Assicurati che la proprietà del file delle specifiche dei pod del server API sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.4 | Assicurati che la proprietà del file delle specifiche del pod del gestore del controller sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.6 | Assicurati che la proprietà del file delle specifiche dei pod dello scheduler sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.8 | Assicurati che la proprietà del file delle specifiche del pod etcd sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.9 | Assicurati che le autorizzazioni dei file dell'interfaccia di rete del container siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Conforme |
1.1.10 | Assicurati che la proprietà del file dell'interfaccia di rete del container sia impostata su root:root (Manuale) |
L1 | Conforme |
1.1.11 | Assicurati che le autorizzazioni per la directory dei dati etcd siano impostate su 700 o su un valore più restrittivo (automatico) |
L1 | Conforme |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente |
1.1.13 | Assicurati che le autorizzazioni del file admin.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.14 | Assicurati che la proprietà del file admin.conf sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.15 | Assicurati che le autorizzazioni del file scheduler.conf siano impostate su 600 o più restrittive (automatiche) |
L1 | Conforme |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.17 | Assicurati che le autorizzazioni del file controller-manager.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.19 | Assicurati che la directory PKI di Kubernetes e la proprietà del file siano impostate su root:root (Automatico) |
L1 | Conforme |
1.1.20 | Assicurati che le autorizzazioni del file del certificato PKI di Kubernetes siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
1.1.21 | Assicurati che le autorizzazioni del file di chiave PKI di Kubernetes siano impostate su 600 (Manuale) |
L1 | Conforme |
1,20 | Server API | ||
1.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Manuale) |
L1 | Conforme |
1.2.2 | Assicurati che il parametro --token-auth-file non sia impostato (Automatico) |
L1 | Conforme |
1.2.3 | Assicurati che --DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso |
1.2.4 | Assicurati che gli argomenti --kubelet-client-certificate e --kubelet-client-key siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.5 | Assicurati che l'argomento --kubelet-certificate-authority sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.6 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
1.2.7 | Assicurati che l'argomento --authorization-mode includa il nodo (automatico) |
L1 | Conforme |
1.2.8 | Assicurati che l'argomento --authorization-mode includa RBAC (automatico) |
L1 | Conforme |
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso |
1.2.10 | Assicurati che il plug-in di controllo di ammissione AlwaysAdmit non sia impostato (automatico) | L1 | Conforme |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente |
1.2.13 | Assicurati che il plug-in di controllo di ammissione ServiceAccount sia impostato (automatico) | L1 | Conforme |
1.2.14 | Assicurati che il plug-in di controllo di ammissione NamespaceLifecycle sia impostato (automatico) | L1 | Conforme |
1.2.15 | Assicurati che il plug-in di controllo di ammissione NodeRestriction sia impostato (automatico) | L1 | Conforme |
1.2.16 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.2.17 | Assicurati che l'argomento --audit-log-path sia impostato (Automatico) |
L1 | Conforme |
1.2.18 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.19 | Assicurati che l'argomento --audit-log-maxbackup sia impostato su 10 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.20 | Assicurati che l'argomento --audit-log-maxsize sia impostato su 100 o come appropriato (Automatico) |
L1 | Conforme |
1.2.21 | Assicurati che l'argomento --request-timeout sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.22 | Assicurati che l'argomento --service-account-lookup sia impostato su true (automatico) |
L1 | Conforme |
1.2.23 | Assicurati che l'argomento --service-account-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.24 | Assicurati che gli argomenti --etcd-certfile e --etcd-keyfile siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.25 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.26 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.27 | Assicurati che l'argomento --etcd-cafile sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.28 | Assicurati che l'argomento --encryption-provider-config sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.29 | Assicurati che i provider di crittografia siano configurati in modo appropriato (manuale) | L1 | Conforme |
1.2.30 | Assicurati che il server API utilizzi solo crittografie crittografiche efficaci (manuali) | L1 | Conforme |
1,30 | Responsabile del titolare | ||
1.3.1 | Assicurati che l'argomento --terminated-pod-gc-threshold sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.3.2 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.3.3 | Assicurati che l'argomento --use-service-account-credentials sia impostato su true (automatico) |
L1 | Conforme |
1.3.4 | Assicurati che l'argomento --service-account-private-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.5 | Assicurati che l'argomento --root-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.6 | Assicurati che l'argomento PivotKubeletServerCertificate sia impostato su true (Automated) (Automatico) | L2 | Conforme |
1.3.7 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme |
1,40 | Programmatore | ||
1.4.1 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.4.2 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Non conforme |
2 | Configurazione del nodo Etcd | ||
2 | Configurazione del nodo Etcd | ||
2.1 | Assicurati che gli argomenti --cert-file e --key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2.2 | Assicurati che l'argomento --client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2.3 | Assicurati che l'argomento --auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2,4 | Assicurati che gli argomenti --peer-cert-file e --peer-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2,5 | Assicurati che l'argomento --peer-client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2,6 | Assicurati che l'argomento --peer-auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2.7 | Assicurati di utilizzare un'autorità di certificazione univoca per etcd (manuale) | L2 | Conforme |
3 | Configurazione del piano di controllo | ||
3,10 | Autenticazione e autorizzazione | ||
3.1.1 | L'autenticazione del certificato client non deve essere utilizzata per gli utenti (manuale) | L2 | Conforme |
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3,20 | Logging | ||
3.2.1 | Assicurati che venga creato un criterio di controllo minimo (manuale) | L1 | Conforme |
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente |
4 | Configurazione della sicurezza del nodo worker | ||
4,10 | File di configurazione dei nodi worker | ||
4.1.1 | Assicurati che le autorizzazioni dei file del servizio kubelet siano impostate su 600 o più restrittive (automatiche) |
L1 | Non conforme |
4.1.2 | Assicurati che la proprietà dei file del servizio kubelet sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.3 | Se esiste un file kubeconfig del proxy, assicurati che le autorizzazioni siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Avviso |
4.1.4 | Se esiste un file kubeconfig del proxy, assicurati che la proprietà sia impostata su root:root (Manuale) |
L1 | Avviso |
4.1.5 | Assicurati che le autorizzazioni del file kubelet.conf --kubeconfig siano impostate su 600 o su un valore più restrittivo (automatizzato) |
L1 | Conforme |
4.1.6 | Assicurati che la proprietà del file kubelet.conf --kubeconfig sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.7 | Assicurati che le autorizzazioni dei file delle autorità di certificazione siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
4.1.8 | Assicurati che la proprietà del file delle autorità di certificazione client sia impostata su root:root (manuale) |
L1 | Conforme |
4.1.9 | Se il file di configurazione YAML kubelet config. viene utilizzato, convalida le autorizzazioni impostate su 600 o su un valore più restrittivo (automatico) |
L1 | Non conforme |
4.1.10 | Se il file di configurazione YAML kubelet config. viene utilizzato, convalida la proprietà del file è impostato su root:root (automatico) |
L1 | Conforme |
4,20 | Kubelet | ||
4.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Automatico) |
L1 | Conforme |
4.2.2 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
4.2.3 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
4.2.4 | Verifica che l'argomento --read-only-port sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.5 | Assicurati che l'argomento --streaming-connection-idle-timeout non sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.6 | Assicurati che l'argomento --make-iptables-util-chains sia impostato su true (automatico) |
L1 | Conforme |
4.2.7 | Assicurati che l'argomento --hostname-override non sia impostato (Manuale) |
L1 | Conforme |
4.2.8 | Assicurati che l'argomento eventRecordQPS sia impostato su un livello che garantisca l'acquisizione appropriata degli eventi (manuale) | L1 | Conforme |
4.2.9 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (manuale) |
L2 | Controllo equivalente |
4.2.10 | Assicurati che l'argomento --rotate-certificates non sia impostato su false (automatico) |
L1 | Conforme |
4.2.11 | Verifica che l'argomento RuotaKubeletServerCertificate sia impostato su true (Manuale) | L1 | Conforme |
4.2.12 | Assicurati che Kubelet utilizzi solo crittografie crittografiche efficaci (manuale) | L1 | Conforme |
4.2.13 | Assicurati che sia impostato un limite per i PID dei pod (manuale) | L1 | Conforme |
Google Distributed Cloud 1.28
Disponibile a breve.Google Distributed Cloud 1.16
Versioni
Questa sezione fa riferimento alle seguenti versioni:
Versione Anthos | Versione di Kubernetes | Versione del benchmark CIS per Kubernetes |
---|---|---|
1.16.0 | 1.27.1 | 1,7 |
Stato del cluster di amministrazione Google Distributed Cloud
# | Suggerimento | Livello | Stato |
---|---|---|---|
1 | Configurazione della sicurezza del piano di controllo | ||
1,10 | File di configurazione dei nodi del piano di controllo | ||
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.2 | Assicurati che la proprietà del file delle specifiche dei pod del server API sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.4 | Assicurati che la proprietà del file delle specifiche del pod del gestore del controller sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.6 | Assicurati che la proprietà del file delle specifiche dei pod dello scheduler sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.8 | Assicurati che la proprietà del file delle specifiche del pod etcd sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.9 | Assicurati che le autorizzazioni dei file dell'interfaccia di rete del container siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Conforme |
1.1.10 | Assicurati che la proprietà del file dell'interfaccia di rete del container sia impostata su root:root (Manuale) |
L1 | Conforme |
1.1.11 | Assicurati che le autorizzazioni per la directory dei dati etcd siano impostate su 700 o su un valore più restrittivo (automatico) |
L1 | Conforme |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente |
1.1.13 | Assicurati che le autorizzazioni del file admin.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.14 | Assicurati che la proprietà del file admin.conf sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.15 | Assicurati che le autorizzazioni del file scheduler.conf siano impostate su 600 o più restrittive (automatiche) |
L1 | Conforme |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.17 | Assicurati che le autorizzazioni del file controller-manager.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.19 | Assicurati che la directory PKI di Kubernetes e la proprietà del file siano impostate su root:root (Automatico) |
L1 | Conforme |
1.1.20 | Assicurati che le autorizzazioni del file del certificato PKI di Kubernetes siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
1.1.21 | Assicurati che le autorizzazioni del file di chiave PKI di Kubernetes siano impostate su 600 (Manuale) |
L1 | Conforme |
1,20 | Server API | ||
1.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Manuale) |
L1 | Conforme |
1.2.2 | Assicurati che il parametro --token-auth-file non sia impostato (Automatico) |
L1 | Conforme |
1.2.3 | Assicurati che --DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso |
1.2.4 | Assicurati che gli argomenti --kubelet-client-certificate e --kubelet-client-key siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.5 | Assicurati che l'argomento --kubelet-certificate-authority sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.6 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
1.2.7 | Assicurati che l'argomento --authorization-mode includa il nodo (automatico) |
L1 | Conforme |
1.2.8 | Assicurati che l'argomento --authorization-mode includa RBAC (automatico) |
L1 | Conforme |
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso |
1.2.10 | Assicurati che il plug-in di controllo di ammissione AlwaysAdmit non sia impostato (automatico) | L1 | Conforme |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente |
1.2.13 | Assicurati che il plug-in di controllo di ammissione ServiceAccount sia impostato (automatico) | L1 | Conforme |
1.2.14 | Assicurati che il plug-in di controllo di ammissione NamespaceLifecycle sia impostato (automatico) | L1 | Conforme |
1.2.15 | Assicurati che il plug-in di controllo di ammissione NodeRestriction sia impostato (automatico) | L1 | Conforme |
1.2.16 | Assicurati che l'argomento --secure-port non sia impostato su 0 . Nota: questo suggerimento è obsoleto e verrà eliminato in base alla procedura di consenso (manuale) |
L1 | Conforme |
1.2.17 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.2.18 | Assicurati che l'argomento --audit-log-path sia impostato (Automatico) |
L1 | Conforme |
1.2.19 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.20 | Assicurati che l'argomento --audit-log-maxbackup sia impostato su 10 o come appropriato (Automatico) |
L1 | Conforme |
1.2.21 | Assicurati che l'argomento --audit-log-maxsize sia impostato su 100 o come appropriato (Automatico) |
L1 | Conforme |
1.2.22 | Assicurati che l'argomento --request-timeout sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.23 | Assicurati che l'argomento --service-account-lookup sia impostato su true (automatico) |
L1 | Conforme |
1.2.24 | Assicurati che l'argomento --service-account-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.25 | Assicurati che gli argomenti --etcd-certfile e --etcd-keyfile siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.26 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.27 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.28 | Assicurati che l'argomento --etcd-cafile sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.29 | Assicurati che l'argomento --encryption-provider-config sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.30 | Assicurati che i provider di crittografia siano configurati in modo appropriato (manuale) | L1 | Conforme |
1.2.31 | Assicurati che il server API utilizzi solo crittografie crittografiche efficaci (manuali) | L1 | Conforme |
1,30 | Responsabile del titolare | ||
1.3.1 | Assicurati che l'argomento --terminated-pod-gc-threshold sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.3.2 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.3.3 | Assicurati che l'argomento --use-service-account-credentials sia impostato su true (automatico) |
L1 | Conforme |
1.3.4 | Assicurati che l'argomento --service-account-private-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.5 | Assicurati che l'argomento --root-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.6 | Assicurati che l'argomento PivotKubeletServerCertificate sia impostato su true (Automated) (Automatico) | L2 | Conforme |
1.3.7 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Conforme |
1,40 | Programmatore | ||
1.4.1 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.4.2 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Conforme |
2 | Configurazione del nodo Etcd | ||
2 | Configurazione del nodo Etcd | ||
2.1 | Assicurati che gli argomenti --cert-file e --key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2.2 | Assicurati che l'argomento --client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2.3 | Assicurati che l'argomento --auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2,4 | Assicurati che gli argomenti --peer-cert-file e --peer-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2,5 | Assicurati che l'argomento --peer-client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2,6 | Assicurati che l'argomento --peer-auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2.7 | Assicurati di utilizzare un'autorità di certificazione univoca per etcd (manuale) | L2 | Conforme |
3 | Configurazione del piano di controllo | ||
3,10 | Autenticazione e autorizzazione | ||
3.1.1 | L'autenticazione del certificato client non deve essere utilizzata per gli utenti (manuale) | L2 | Conforme |
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3,20 | Logging | ||
3.2.1 | Assicurati che venga creato un criterio di controllo minimo (manuale) | L1 | Conforme |
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente |
4 | Configurazione della sicurezza del nodo worker | ||
4,10 | File di configurazione dei nodi worker | ||
4.1.1 | Assicurati che le autorizzazioni dei file del servizio kubelet siano impostate su 600 o più restrittive (automatiche) |
L1 | Non conforme |
4.1.2 | Assicurati che la proprietà dei file del servizio kubelet sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.3 | Se esiste un file kubeconfig del proxy, assicurati che le autorizzazioni siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Conforme |
4.1.4 | Se esiste un file kubeconfig del proxy, assicurati che la proprietà sia impostata su root:root (Manuale) |
L1 | Conforme |
4.1.5 | Assicurati che le autorizzazioni del file kubelet.conf --kubeconfig siano impostate su 600 o su un valore più restrittivo (automatizzato) |
L1 | Conforme |
4.1.6 | Assicurati che la proprietà del file kubelet.conf --kubeconfig sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.7 | Assicurati che le autorizzazioni dei file delle autorità di certificazione siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
4.1.8 | Assicurati che la proprietà del file delle autorità di certificazione client sia impostata su root:root (manuale) |
L1 | Conforme |
4.1.9 | Se viene utilizzato il file di configurazione YAML kubelet config. , convalida le autorizzazioni impostate su 600 o su un valore più restrittivo (manuale) |
L1 | Avviso |
4.1.10 | Se il file di configurazione YAML kubelet config. viene utilizzato, la proprietà del file è impostata su root:root (manuale) |
L1 | Conforme |
4,20 | Kubelet | ||
4.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Automatico) |
L1 | Conforme |
4.2.2 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
4.2.3 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
4.2.4 | Verifica che l'argomento --read-only-port sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.5 | Assicurati che l'argomento --streaming-connection-idle-timeout non sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.6 | Assicurati che l'argomento --make-iptables-util-chains sia impostato su true (automatico) |
L1 | Conforme |
4.2.7 | Assicurati che l'argomento --hostname-override non sia impostato (Manuale) |
L1 | Conforme |
4.2.8 | Assicurati che l'argomento eventRecordQPS sia impostato su un livello che garantisca l'acquisizione appropriata degli eventi (manuale) | L1 | Conforme |
4.2.9 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (manuale) |
L2 | Controllo equivalente |
4.2.10 | Assicurati che l'argomento --rotate-certificates non sia impostato su false (automatico) |
L1 | Conforme |
4.2.11 | Verifica che l'argomento RuotaKubeletServerCertificate sia impostato su true (Manuale) | L1 | Conforme |
4.2.12 | Assicurati che Kubelet utilizzi solo crittografie crittografiche efficaci (manuale) | L1 | Conforme |
4.2.13 | Assicurati che sia impostato un limite per i PID dei pod (manuale) | L1 | Conforme |
Descrizioni di errori e controlli equivalenti per il cluster di amministrazione Google Distributed Cloud
# | Suggerimento | Livello | Stato | Valore | Motivazione |
---|---|---|---|---|---|
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod del server API del cluster utente viene archiviata in etcd. |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod del gestore del controller del cluster utente viene archiviata in etcd. |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod scheduler del cluster utente viene archiviata in etcd. |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica etcd del cluster utente viene archiviata nel cluster di amministrazione etcd. |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente | 2001:2001 |
Il container etcd viene eseguito come 2001 e la directory dei dati etcd è di proprietà di 2001:2001 . |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente | 2000:2000 |
Il container kube-scheduler viene eseguito come 2000 e questo file è di proprietà di 2000:2000 . |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente | 2002:2002 |
Il container controller-manager viene eseguito come 2002 e questo file è di proprietà di 2002:2002. |
1.2.3 | Assicurati che -- DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente | non impostato | Il controller di ammissione AlwaysPullImages fornisce una certa protezione per le immagini di registro private nei cluster multitenant non cooperativi, al costo di rendere i registri di container un single point of failure per la creazione di nuovi pod nell'intero cluster. Google Distributed Cloud non abilita il controller di ammissione AlwaysPullImages, di conseguenza spetta agli amministratori del cluster l'implementazione dei criteri di ammissione per scendere a compromessi. |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente | non impostato | PodSecurityPolicy verrà rimosso da Kubernetes nella versione 1.25. In sostituzione, Pod Security Admission è abilitato per impostazione predefinita a partire dalla versione 1.23. |
1.2.19 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente | non impostato | Google Distributed Cloud acquisisce gli audit log, ma non utilizza questi flag per i controlli. Per ulteriori dettagli, vedi i criteri di controllo di Google Distributed Cloud. |
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente | non impostato | Google Distributed Cloud acquisisce gli audit log, ma non utilizza questi flag per i controlli. Per ulteriori dettagli, vedi i criteri di controllo di Google Distributed Cloud. |
4.1.1 | Assicurati che le autorizzazioni dei file del servizio kubelet siano impostate su 600 o più restrittive (automatiche) |
L1 | Non conforme | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
4.1.9 | Se viene utilizzato il file di configurazione YAML kubelet config. , convalida le autorizzazioni impostate su 600 o su un valore più restrittivo (manuale) |
L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
4.2.9 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (manuale) |
L2 | Controllo equivalente | non impostato | Google Distributed Cloud gestisce il protocollo TLS del server kubelet utilizzando il flag --rotate-server-certificates . |
Stato del cluster utente Google Distributed Cloud
# | Suggerimento | Livello | Stato |
---|---|---|---|
1 | Configurazione della sicurezza del piano di controllo | ||
1,10 | File di configurazione dei nodi del piano di controllo | ||
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.2 | Assicurati che la proprietà del file delle specifiche dei pod del server API sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.4 | Assicurati che la proprietà del file delle specifiche del pod del gestore del controller sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.6 | Assicurati che la proprietà del file delle specifiche dei pod dello scheduler sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente |
1.1.8 | Assicurati che la proprietà del file delle specifiche del pod etcd sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.9 | Assicurati che le autorizzazioni dei file dell'interfaccia di rete del container siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Conforme |
1.1.10 | Assicurati che la proprietà del file dell'interfaccia di rete del container sia impostata su root:root (Manuale) |
L1 | Conforme |
1.1.11 | Assicurati che le autorizzazioni per la directory dei dati etcd siano impostate su 700 o su un valore più restrittivo (automatico) |
L1 | Conforme |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente |
1.1.13 | Assicurati che le autorizzazioni del file admin.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.14 | Assicurati che la proprietà del file admin.conf sia impostata su root:root (Automatico) |
L1 | Conforme |
1.1.15 | Assicurati che le autorizzazioni del file scheduler.conf siano impostate su 600 o più restrittive (automatiche) |
L1 | Conforme |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.17 | Assicurati che le autorizzazioni del file controller-manager.conf siano impostate su 600 o più restrittive (automatizzate) |
L1 | Conforme |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente |
1.1.19 | Assicurati che la directory PKI di Kubernetes e la proprietà del file siano impostate su root:root (Automatico) |
L1 | Conforme |
1.1.20 | Assicurati che le autorizzazioni del file del certificato PKI di Kubernetes siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
1.1.21 | Assicurati che le autorizzazioni del file di chiave PKI di Kubernetes siano impostate su 600 (Manuale) |
L1 | Conforme |
1,20 | Server API | ||
1.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Manuale) |
L1 | Conforme |
1.2.2 | Assicurati che il parametro --token-auth-file non sia impostato (Automatico) |
L1 | Conforme |
1.2.3 | Assicurati che --DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso |
1.2.4 | Assicurati che gli argomenti --kubelet-client-certificate e --kubelet-client-key siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.5 | Assicurati che l'argomento --kubelet-certificate-authority sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.6 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
1.2.7 | Assicurati che l'argomento --authorization-mode includa il nodo (automatico) |
L1 | Conforme |
1.2.8 | Assicurati che l'argomento --authorization-mode includa RBAC (automatico) |
L1 | Conforme |
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso |
1.2.10 | Assicurati che il plug-in di controllo di ammissione AlwaysAdmit non sia impostato (automatico) | L1 | Conforme |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente |
1.2.13 | Assicurati che il plug-in di controllo di ammissione ServiceAccount sia impostato (automatico) | L1 | Conforme |
1.2.14 | Assicurati che il plug-in di controllo di ammissione NamespaceLifecycle sia impostato (automatico) | L1 | Conforme |
1.2.15 | Assicurati che il plug-in di controllo di ammissione NodeRestriction sia impostato (automatico) | L1 | Conforme |
1.2.16 | Assicurati che l'argomento --secure-port non sia impostato su 0 . Nota: questo suggerimento è obsoleto e verrà eliminato in base alla procedura di consenso (manuale) |
L1 | Conforme |
1.2.17 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.2.18 | Assicurati che l'argomento --audit-log-path sia impostato (Automatico) |
L1 | Conforme |
1.2.19 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente |
1.2.20 | Assicurati che l'argomento --audit-log-maxbackup sia impostato su 10 o come appropriato (Automatico) |
L1 | Conforme |
1.2.21 | Assicurati che l'argomento --audit-log-maxsize sia impostato su 100 o come appropriato (Automatico) |
L1 | Conforme |
1.2.22 | Assicurati che l'argomento --request-timeout sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.23 | Assicurati che l'argomento --service-account-lookup sia impostato su true (automatico) |
L1 | Conforme |
1.2.24 | Assicurati che l'argomento --service-account-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.25 | Assicurati che gli argomenti --etcd-certfile e --etcd-keyfile siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.26 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
1.2.27 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.28 | Assicurati che l'argomento --etcd-cafile sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.2.29 | Assicurati che l'argomento --encryption-provider-config sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.2.30 | Assicurati che i provider di crittografia siano configurati in modo appropriato (manuale) | L1 | Conforme |
1.2.31 | Assicurati che il server API utilizzi solo crittografie crittografiche efficaci (manuali) | L1 | Conforme |
1,30 | Responsabile del titolare | ||
1.3.1 | Assicurati che l'argomento --terminated-pod-gc-threshold sia impostato come appropriato (Manuale) |
L1 | Conforme |
1.3.2 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.3.3 | Assicurati che l'argomento --use-service-account-credentials sia impostato su true (automatico) |
L1 | Conforme |
1.3.4 | Assicurati che l'argomento --service-account-private-key-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.5 | Assicurati che l'argomento --root-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
1.3.6 | Assicurati che l'argomento PivotKubeletServerCertificate sia impostato su true (Automated) (Automatico) | L2 | Conforme |
1.3.7 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Conforme |
1,40 | Programmatore | ||
1.4.1 | Assicurati che l'argomento --profiling sia impostato su false (Automatico) |
L1 | Conforme |
1.4.2 | Assicurati che l'argomento --bind-address sia impostato su 127.0.0.1 (Automatico) |
L1 | Conforme |
2 | Configurazione del nodo Etcd | ||
2 | Configurazione del nodo Etcd | ||
2.1 | Assicurati che gli argomenti --cert-file e --key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2.2 | Assicurati che l'argomento --client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2.3 | Assicurati che l'argomento --auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2,4 | Assicurati che gli argomenti --peer-cert-file e --peer-key-file siano impostati in modo appropriato (automatico) |
L1 | Conforme |
2,5 | Assicurati che l'argomento --peer-client-cert-auth sia impostato su true (automatico) |
L1 | Conforme |
2,6 | Assicurati che l'argomento --peer-auto-tls non sia impostato su true (automatico) |
L1 | Conforme |
2.7 | Assicurati di utilizzare un'autorità di certificazione univoca per etcd (manuale) | L2 | Conforme |
3 | Configurazione del piano di controllo | ||
3,10 | Autenticazione e autorizzazione | ||
3.1.1 | L'autenticazione del certificato client non deve essere utilizzata per gli utenti (manuale) | L2 | Conforme |
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso |
3,20 | Logging | ||
3.2.1 | Assicurati che venga creato un criterio di controllo minimo (manuale) | L1 | Conforme |
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente |
4 | Configurazione della sicurezza del nodo worker | ||
4,10 | File di configurazione dei nodi worker | ||
4.1.1 | Assicurati che le autorizzazioni dei file del servizio kubelet siano impostate su 600 o più restrittive (automatiche) |
L1 | Non conforme |
4.1.2 | Assicurati che la proprietà dei file del servizio kubelet sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.3 | Se esiste un file kubeconfig del proxy, assicurati che le autorizzazioni siano impostate su 600 o su un valore più restrittivo (Manuale) |
L1 | Conforme |
4.1.4 | Se esiste un file kubeconfig del proxy, assicurati che la proprietà sia impostata su root:root (Manuale) |
L1 | Conforme |
4.1.5 | Assicurati che le autorizzazioni del file kubelet.conf --kubeconfig siano impostate su 600 o su un valore più restrittivo (automatizzato) |
L1 | Conforme |
4.1.6 | Assicurati che la proprietà del file kubelet.conf --kubeconfig sia impostata su root:root (Automatico) |
L1 | Conforme |
4.1.7 | Assicurati che le autorizzazioni dei file delle autorità di certificazione siano impostate su 600 o più restrittive (Manuale) |
L1 | Conforme |
4.1.8 | Assicurati che la proprietà del file delle autorità di certificazione client sia impostata su root:root (manuale) |
L1 | Conforme |
4.1.9 | Se viene utilizzato il file di configurazione YAML kubelet config. , convalida le autorizzazioni impostate su 600 o su un valore più restrittivo (manuale) |
L1 | Avviso |
4.1.10 | Se il file di configurazione YAML kubelet config. viene utilizzato, la proprietà del file è impostata su root:root (manuale) |
L1 | Conforme |
4,20 | Kubelet | ||
4.2.1 | Assicurati che l'argomento --anonymous-auth sia impostato su false (Automatico) |
L1 | Conforme |
4.2.2 | Assicurati che l'argomento --authorization-mode non sia impostato su AlwaysAllow (Automated) |
L1 | Conforme |
4.2.3 | Assicurati che l'argomento --client-ca-file sia impostato in modo appropriato (automatico) |
L1 | Conforme |
4.2.4 | Verifica che l'argomento --read-only-port sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.5 | Assicurati che l'argomento --streaming-connection-idle-timeout non sia impostato su 0 (Manuale) |
L1 | Conforme |
4.2.6 | Assicurati che l'argomento --make-iptables-util-chains sia impostato su true (automatico) |
L1 | Conforme |
4.2.7 | Assicurati che l'argomento --hostname-override non sia impostato (Manuale) |
L1 | Conforme |
4.2.8 | Assicurati che l'argomento eventRecordQPS sia impostato su un livello che garantisca l'acquisizione appropriata degli eventi (manuale) | L1 | Conforme |
4.2.9 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (manuale) |
L2 | Controllo equivalente |
4.2.10 | Assicurati che l'argomento --rotate-certificates non sia impostato su false (automatico) |
L1 | Conforme |
4.2.11 | Verifica che l'argomento RuotaKubeletServerCertificate sia impostato su true (Manuale) | L1 | Conforme |
4.2.12 | Assicurati che Kubelet utilizzi solo crittografie crittografiche efficaci (manuale) | L1 | Conforme |
4.2.13 | Assicurati che sia impostato un limite per i PID dei pod (manuale) | L1 | Conforme |
Descrizioni di errori e controlli equivalenti per il cluster utente Google Distributed Cloud
# | Suggerimento | Livello | Stato | Valore | Motivazione |
---|---|---|---|---|---|
1.1.1 | Assicurati che le autorizzazioni del file delle specifiche dei pod del server API siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod del server API del cluster utente viene archiviata in etcd. |
1.1.3 | Assicurati che le autorizzazioni dei file delle specifiche dei pod del gestore del controller siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod del gestore del controller del cluster utente viene archiviata in etcd. |
1.1.5 | Assicurati che le autorizzazioni dei file delle specifiche dei pod dello scheduler siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica del pod scheduler del cluster utente viene archiviata in etcd. |
1.1.7 | Assicurati che le autorizzazioni dei file delle specifiche dei pod etcd siano impostate su 600 o più restrittive (automatizzate) |
L1 | Controllo equivalente | N/A | In modalità kubeception, la specifica etcd del cluster utente viene archiviata nel cluster di amministrazione etcd. |
1.1.12 | Assicurati che la proprietà della directory dei dati etcd sia impostata su etcd:etcd (Automatico) |
L1 | Controllo equivalente | 2001:2001 |
Il container etcd viene eseguito come 2001 e la directory dei dati etcd è di proprietà di 2001:2001 . |
1.1.16 | Assicurati che la proprietà del file scheduler.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente | 2000:2000 |
Il container kube-scheduler viene eseguito come 2000 e questo file è di proprietà di 2000:2000 . |
1.1.18 | Assicurati che la proprietà del file controller-manager.conf sia impostata su root:root (Automatico) |
L1 | Controllo equivalente | 2002:2002 |
Il container controller-manager viene eseguito come 2002 e questo file è di proprietà di 2002:2002. |
1.2.3 | Assicurati che -- DenyServiceExternalIPs sia impostato (Manuale) |
L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
1.2.9 | Assicurati che il plug-in di controllo di ammissione EventRateLimit sia impostato (Manuale) | L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
1.2.11 | Assicurati che il plug-in di controllo di ammissione AlwaysPullImages sia impostato (manuale) | L1 | Dipende dall'ambiente | non impostato | Il controller di ammissione AlwaysPullImages fornisce una certa protezione per le immagini di registro private nei cluster multitenant non cooperativi, al costo di rendere i registri di container un single point of failure per la creazione di nuovi pod nell'intero cluster. Google Distributed Cloud non abilita il controller di ammissione AlwaysPullImages, di conseguenza spetta agli amministratori del cluster l'implementazione dei criteri di ammissione per scendere a compromessi. |
1.2.12 | Assicurati che il plug-in per il controllo di ammissione SecurityContextDeny sia impostato se non viene utilizzato PodSecurityPolicy (manuale) | L1 | Controllo equivalente | non impostato | PodSecurityPolicy verrà rimosso da Kubernetes nella versione 1.25. In sostituzione, Pod Security Admission è abilitato per impostazione predefinita a partire dalla versione 1.23. |
1.2.19 | Assicurati che l'argomento --audit-log-maxage sia impostato su 30 o come appropriato (Automatico) |
L1 | Controllo equivalente | non impostato | Google Distributed Cloud acquisisce gli audit log, ma non utilizza questi flag per i controlli. Per ulteriori dettagli, vedi i criteri di controllo di Google Distributed Cloud. |
3.1.2 | L'autenticazione del token dell'account di servizio non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
3.1.3 | L'autenticazione del token di bootstrap non deve essere utilizzata per gli utenti (manuale) | L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
3.2.2 | Assicurati che il criterio di controllo copra i principali problemi di sicurezza (manuale) | L2 | Controllo equivalente | non impostato | Google Distributed Cloud acquisisce gli audit log, ma non utilizza questi flag per i controlli. Per ulteriori dettagli, vedi i criteri di controllo di Google Distributed Cloud. |
4.1.1 | Assicurati che le autorizzazioni dei file del servizio kubelet siano impostate su 600 o più restrittive (automatiche) |
L1 | Non conforme | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
4.1.9 | Se viene utilizzato il file di configurazione YAML kubelet config. , convalida le autorizzazioni impostate su 600 o su un valore più restrittivo (manuale) |
L1 | Avviso | non impostato | Cluster Anthos su VMware non supporta il controller di ammissione Limite di eventi poiché è una funzionalità alpha di Kubernetes. |
4.2.9 | Assicurati che gli argomenti --tls-cert-file e --tls-private-key-file siano impostati in modo appropriato (manuale) |
L2 | Controllo equivalente | non impostato | Google Distributed Cloud gestisce il protocollo TLS del server kubelet utilizzando il flag --rotate-server-certificates . |
Benchmark di controllo
Istruzioni specifiche per il controllo di ciascun suggerimento sono disponibili come parte del CIS Benchmark pertinente. Tuttavia, potresti voler automatizzare alcuni di questi controlli per semplificarne la verifica nel tuo ambiente. Il seguente strumento può esserti di aiuto.
Controllo automatico del CIS Kubernetes Benchmark
Puoi utilizzare uno strumento open source kube-bench per testare la configurazione del cluster rispetto al CIS Kubernetes Benchmark.
Assicurati di specificare la versione appropriata. Ad esempio:
kube-bench node --benchmark cis-1.7