|
Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi. |
Activation du journal d’audit de l’API dans les clusters en aval
L’audit Kubernetes fournit un ensemble d’enregistrements chronologiques pertinents pour la sécurité concernant un cluster. Kube-apiserver effectue l’audit. Les requêtes génèrent un événement à chaque étape de son exécution, qui est ensuite prétraité selon une certaine stratégie et écrit dans un backend. La stratégie détermine ce qui est enregistré et le backend persiste les enregistrements.
Vous souhaiterez peut-être configurer le journal d’audit dans le cadre de la conformité avec les contrôles du Centre pour la sécurité Internet (CIS) des normes Kubernetes.
Pour les détails de configuration, reportez-vous à la documentation officielle de Kubernetes.
-
RKE2
-
K3s
Méthode 1 (Recommandée){nbsp}: Set `audit-policy-file` in `machineGlobalConfig` or `machineSelectorConfig`
Vous pouvez définir audit-policy-file dans le fichier de configuration en utilisant soit machineGlobalConfig soit machineSelectorConfig.
Lors de l’utilisation de machineGlobalConfig, Rancher livre le fichier au chemin /var/lib/rancher/rke2/etc/config-files/audit-policy-file sur tous les nœuds (à la fois les nœuds de plan de contrôle et les nœuds de travail), et définit les options appropriées dans le serveur RKE2. Cela peut entraîner une réconciliation indésirable des nœuds de travail lorsque la stratégie d’audit est modifiée.
Pour éviter la réconciliation des nœuds de travail, utilisez machineSelectorConfig avec un sélecteur d’étiquettes pour cibler uniquement les nœuds de plan de contrôle. Cela garantit que le fichier de stratégie d’audit est uniquement livré aux nœuds de plan de contrôle.
Exemple utilisant machineGlobalConfig :
apiVersion: provisioning.cattle.io/v1
kind: Cluster
spec:
rkeConfig:
machineGlobalConfig:
audit-policy-file: |
apiVersion: audit.k8s.io/v1
kind: Policy
rules:
- level: RequestResponse
resources:
- group: ""
resources:
- pods
Exemple utilisant machineSelectorConfig (recommandé pour éviter la réconciliation des nœuds de travail) :
apiVersion: provisioning.cattle.io/v1
kind: Cluster
spec:
rkeConfig:
machineSelectorConfig:
- config:
audit-policy-file: |
apiVersion: audit.k8s.io/v1
kind: Policy
rules:
- level: RequestResponse
resources:
- group: ""
resources:
- pods
machineLabelSelector:
matchLabels:
rke.cattle.io/control-plane-role: 'true'
Méthode 2{nbsp}: Utilisez les Directives, `machineSelectorFiles` et `machineGlobalConfig`
|
Cette fonctionnalité est disponible dans Rancher v2.7.2 et versions ultérieures. |
Vous pouvez utiliser machineSelectorFiles pour livrer le fichier de stratégie d’audit aux nœuds de plan de contrôle, et machineGlobalConfig pour définir les options sur kube-apiserver.
En tant que prérequis, vous devez créer un secret ou un configmap pour être la source de la stratégie d’audit.
Le secret ou le configmap doit répondre aux exigences suivantes :
-
Il doit se trouver dans l’espace de noms
fleet-defaultoù l’objet Cluster existe. -
Il doit avoir l’annotation
rke.cattle.io/object-authorized-for-clusters: <cluster-name1>,<cluster-name2>qui permet aux clusters cibles de l’utiliser.
|
Le tableau de bord Rancher fournit un formulaire facile à utiliser pour créer le secret ou le configmap. |
Exemple :
apiVersion: v1
data:
audit-policy: >-
IyBMb2cgYWxsIHJlcXVlc3RzIGF0IHRoZSBNZXRhZGF0YSBsZXZlbC4KYXBpVmVyc2lvbjogYXVkaXQuazhzLmlvL3YxCmtpbmQ6IFBvbGljeQpydWxlczoKLSBsZXZlbDogTWV0YWRhdGE=
kind: Secret
metadata:
annotations:
rke.cattle.io/object-authorized-for-clusters: cluster1
name: <name1>
namespace: fleet-default
Activez et configurez le journal d’audit en modifiant le cluster en YAML et en utilisant les directives machineSelectorFiles et machineGlobalConfig.
Exemple :
apiVersion: provisioning.cattle.io/v1
kind: Cluster
spec:
rkeConfig:
machineGlobalConfig:
kube-apiserver-arg:
- audit-policy-file=<customized-path>/dev-audit-policy.yaml
- audit-log-path=<customized-path>/dev-audit.logs
machineSelectorFiles:
- fileSources:
- configMap:
name: ''
secret:
items:
- key: audit-policy
path: <customized-path>/dev-audit-policy.yaml
name: dev-audit-policy
machineLabelSelector:
matchLabels:
rke.cattle.io/control-plane-role: 'true'
Pour plus d’informations sur la configuration des clusters, consultez les pages de référence configuration des clusters RKE2.
|
Cette fonctionnalité est disponible dans Rancher v2.7.2 et versions ultérieures. |
Vous pouvez utiliser machineSelectorFiles pour livrer le fichier de stratégie d’audit aux nœuds de plan de contrôle, et machineGlobalConfig pour définir les options sur kube-apiserver.
En tant que prérequis, vous devez créer un secret ou un configmap pour être la source de la stratégie d’audit.
Le secret ou le configmap doit répondre aux exigences suivantes :
-
Il doit se trouver dans l’espace de noms
fleet-defaultoù l’objet Cluster existe. -
Il doit avoir l’annotation
rke.cattle.io/object-authorized-for-clusters: <cluster-name1>,<cluster-name2>qui permet aux clusters cibles de l’utiliser.
Exemple :
apiVersion: v1
data:
audit-policy: >-
IyBMb2cgYWxsIHJlcXVlc3RzIGF0IHRoZSBNZXRhZGF0YSBsZXZlbC4KYXBpVmVyc2lvbjogYXVkaXQuazhzLmlvL3YxCmtpbmQ6IFBvbGljeQpydWxlczoKLSBsZXZlbDogTWV0YWRhdGE=
kind: Secret
metadata:
annotations:
rke.cattle.io/object-authorized-for-clusters: cluster1
name: <name1>
namespace: fleet-default
Activez et configurez le journal d’audit en modifiant le cluster en YAML et en utilisant les directives machineSelectorFiles et machineGlobalConfig.
Exemple :
apiVersion: provisioning.cattle.io/v1
kind: Cluster
spec:
rkeConfig:
machineGlobalConfig:
kube-apiserver-arg:
- audit-policy-file=<customized-path>/dev-audit-policy.yaml
- audit-log-path=<customized-path>/dev-audit.logs
machineSelectorFiles:
- fileSources:
- configMap:
name: ''
secret:
items:
- key: audit-policy
path: <customized-path>/dev-audit-policy.yaml
name: dev-audit-policy
machineLabelSelector:
matchLabels:
rke.cattle.io/control-plane-role: 'true'
Pour plus d’informations sur la configuration des clusters, consultez les pages de référence configuration des clusters K3s.