11.4. Configuration du profil de sécurité TLS pour le plan de contrôle
Pour configurer un profil de sécurité TLS pour le plan de contrôle, modifiez la ressource personnalisée (CR) APIServer
afin de spécifier un profil de sécurité TLS prédéfini ou personnalisé. La définition du profil de sécurité TLS dans la CR APIServer
propage le paramètre aux composants suivants du plan de contrôle :
- Serveur API Kubernetes
- Gestionnaire de contrôleur Kubernetes
- Ordonnanceur Kubernetes
- Serveur API OpenShift
- Serveur OpenShift OAuth API
- Serveur OpenShift OAuth
- etcd
Si aucun profil de sécurité TLS n'est configuré, le profil de sécurité TLS par défaut est Intermediate
.
Le profil de sécurité TLS par défaut du contrôleur d'entrée est basé sur le profil de sécurité TLS défini pour le serveur API.
Exemple de CR APIServer
qui configure le profil de sécurité TLS Old
apiVersion: config.openshift.io/v1 kind: APIServer ... spec: tlsSecurityProfile: old: {} type: Old ...
Le profil de sécurité TLS définit la version minimale de TLS et les algorithmes de chiffrement TLS requis pour communiquer avec les composants du plan de contrôle.
Vous pouvez voir le profil de sécurité TLS configuré dans la ressource personnalisée (CR) APIServer
sous Spec.Tls Security Profile
. Pour le profil de sécurité TLS Custom
, les algorithmes de chiffrement spécifiques et la version TLS minimale sont répertoriés.
Le plan de contrôle ne prend pas en charge TLS 1.3
en tant que version minimale de TLS ; le profil Modern
n'est pas pris en charge car il nécessite TLS 1.3
.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
.
Procédure
Modifiez l'adresse
APIServer
CR par défaut pour configurer le profil de sécurité TLS :$ oc edit APIServer cluster
Ajouter le champ
spec.tlsSecurityProfile
:Exemple de CR
APIServer
pour un profilCustom
apiVersion: config.openshift.io/v1 kind: APIServer metadata: name: cluster spec: tlsSecurityProfile: type: Custom 1 custom: 2 ciphers: 3 - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-CHACHA20-POLY1305 - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-ECDSA-AES128-GCM-SHA256 minTLSVersion: VersionTLS11
- 1
- Spécifiez le type de profil de sécurité TLS (
Old
,Intermediate
, ouCustom
). La valeur par défaut estIntermediate
. - 2
- Spécifiez le champ approprié pour le type sélectionné :
-
old: {}
-
intermediate: {}
-
custom:
-
- 3
- Pour le type
custom
, spécifiez une liste de chiffrements TLS et la version TLS minimale acceptée.
- Enregistrez le fichier pour appliquer les modifications.
Vérification
Vérifiez que le profil de sécurité TLS est défini dans le CR
APIServer
:$ oc describe apiserver cluster
Exemple de sortie
Name: cluster Namespace: ... API Version: config.openshift.io/v1 Kind: APIServer ... Spec: Audit: Profile: Default Tls Security Profile: Custom: Ciphers: ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-GCM-SHA256 Min TLS Version: VersionTLS11 Type: Custom ...
Vérifiez que le profil de sécurité TLS est défini dans le CR
etcd
:$ oc describe etcd cluster
Exemple de sortie
Name: cluster Namespace: ... API Version: operator.openshift.io/v1 Kind: Etcd ... Spec: Log Level: Normal Management State: Managed Observed Config: Serving Info: Cipher Suites: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 Min TLS Version: VersionTLS12 ...