Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le normes FIPS (Federal Information Processing Standard) 140-2 est une norme gouvernementale américaine qui définit les exigences de sécurité minimales pour les modules cryptographiques dans les produits et systèmes de technologies de l’information. Azure Kubernetes Service (AKS) vous permet de créer des pools de nœuds Linux et Windows compatibles avec la norme FIPS 140-2. Les déploiements s’exécutant sur des pools de nœuds compatibles FIPS peuvent utiliser ces modules cryptographiques pour fournir une sécurité accrue et aider à respecter les contrôles de sécurité dans le cadre de la conformité FedRAMP. Pour plus d’informations sur la norme FIPS 140-2, consultez Norme FIPS (Federal Information Processing Standard) 140.
Avertissement
Dans cet article, il existe des références à une fonctionnalité qui peut utiliser des versions du système d’exploitation Ubuntu qui sont déconseillées pour AKS.
- À compter du 17 mars 2027, AKS ne prendra plus en charge Ubuntu 20.04. Les images de nœud existantes sont supprimées et AKS ne fournissent plus de mises à jour de sécurité. Vous ne pourrez plus redimensionner vos pools de nœuds. Mettez à niveau vos pools de nœuds vers kubernetes version 1.35+ pour migrer vers une version Ubuntu prise en charge. Pour plus d’informations sur cette mise hors service, consultez Les problèmes GitHub AKS
Important
Depuis le 30 novembre 2025, Azure Kubernetes Service (AKS) ne prend plus en charge ou fournit des mises à jour de sécurité pour Azure Linux 2.0. L’image de nœud Azure Linux 2.0 est figée à la version 202512.06.0. À compter du 31 mars 2026, les images de nœud seront supprimées et vous ne pourrez pas mettre à l’échelle vos pools de nœuds. Migrez vers une version Azure Linux prise en charge en mettant à niveau vos pools de nœuds vers une version Kubernetes prise en charge ou en migrant vers osSku AzureLinux3. Pour plus d’informations, consultez [Retrait] Pools de nœuds Azure Linux 2.0 sur AKS.
Prérequis
Azure CLI version 2.32.0 ou ultérieure installé et configuré. Pour connaître la version de l’interface, exécutez az --version. Pour plus d'informations sur l'installation ou la mise à niveau de l’interface de ligne de commande Azure, consultez Installer Azure CLI.
Remarque
AKS Monitoring Addon prend en charge les pools de nœuds compatibles FIPS avec Ubuntu, Azure Linux et Windows à partir de la version de l'agent 3.1.17 (Linux) et Win-3.1.17 (Windows).
Limites
- Les pools de nœuds compatibles FIPS présentent les limitations suivantes :
- Les pools de nœuds compatibles FIPS requièrent la version 1.19 ou une version ultérieure de Kubernetes.
- Pour mettre à jour les packages ou modules sous-jacents utilisés pour FIPS, vous devez utiliser la mise à niveau d’image de nœud.
- Les images de conteneur sur les nœuds FIPS ne sont pas évaluées pour la conformité avec FIPS.
- Le montage d’un partage CIFS échoue, car FIPS désactive certains modules d’authentification. Pour contourner ce problème, consultez Erreurs lors du montage d’un partage de fichiers sur un pool de nœuds compatible FIPS.
- Les pools de nœuds compatibles FIPS avec des machines virtuelles Arm64 sont uniquement pris en charge avec Azure Linux 3.0+.
- FIPS n’est pas pris en charge avec Flatcar Container Linux pour AKS (préversion).
Important
L’image Linux compatible FIPS est une image différente de celle de l’image Linux par défaut utilisée pour les pools de nœuds basés sur Linux.
Les images de nœud compatibles FIPS peuvent avoir des numéros de version différents, par exemple des versions différentes du noyau, par rapport aux images qui ne sont pas compatibles FIPS. Le cycle de mise à jour des pools de nœuds et des images de nœuds compatibles FIPS peut différer des pools de nœuds et des images qui ne sont pas compatibles FIPS.
Versions des systèmes d’exploitation prise en charge
Vous pouvez créer des pools de nœuds compatibles FIPS sur tous les types de système d’exploitation pris en charge (Linux et Windows). Toutefois, toutes les versions du système d’exploitation ne prennent pas en charge les pools de nœuds compatibles FIPS. Une fois qu’une nouvelle version du système d’exploitation est publiée, il existe généralement une période d’attente avant qu’elle soit conforme à FIPS.
Ce tableau inclut les versions de système d’exploitation prises en charge :
| Type de système d'exploitation | Référence (SKU) du système d’exploitation | Conformité aux normes FIPS |
|---|---|---|
| Linux | Ubuntu | Pris en charge |
| Linux | Linux Azure | Pris en charge |
| Fenêtres | Windows Server 2019 | Pris en charge |
| Fenêtres | Windows Server 2022 | Pris en charge |
Lors de la demande d’Ubuntu compatible avec FIPS, si la version par défaut d’Ubuntu ne prend pas en charge FIPS, AKS bascule par défaut vers la version la plus récente d’Ubuntu prise en charge par FIPS. Par exemple, Ubuntu 22.04 est le système d’exploitation par défaut pour les pools de nœuds Linux. Étant donné que la version 22.04 ne prend actuellement pas en charge FIPS, AKS est défini par défaut sur Ubuntu 20.04 pour les pools de nœuds compatibles FIPS Linux.
Remarque
Auparavant, vous pouviez utiliser l’API GetOSOptions pour déterminer si un système d’exploitation donné est pris en charge par FIPS. L’API GetOSOptions est désormais déconseillée et n’est plus incluse dans les nouvelles versions de l’API AKS depuis le 01-05-2024.
Créer un pool de nœuds Linux compatible FIPS
Créez un pool de nœuds Linux compatible FIPS à l’aide de la commande az aks nodepool add avec le
--enable-fips-imageparamètre.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name fipsnp \ --enable-fips-imageRemarque
Vous pouvez également utiliser le
--enable-fips-imageparamètre avec la commande az aks create lors de la création d’un cluster pour activer FIPS sur le pool de nœuds par défaut. Lors de l’ajout de pools de nœuds à un cluster créé de cette façon, vous devez toujours utiliser le paramètre--enable-fips-imagelors de l’ajout de pools de nœuds pour créer un pool de nœuds compatible FIPS.Vérifiez que votre pool de nœuds est activé par FIPS à l’aide de la commande az aks show et interrogez la valeur enableFIPS dans agentPoolProfiles.
az aks show \ --resource-group myResourceGroup \ --name myAKSCluster \ --query="agentPoolProfiles[].{Name:name enableFips:enableFips}" \ -o tableL’exemple de sortie suivant montre que le pool de nœuds fipsnp est compatible FIPS :
Name enableFips --------- ------------ fipsnp True nodepool1 FalseListez les nœuds à l’aide de la commande
kubectl get nodes.kubectl get nodesL’exemple de sortie suivant présente la liste des nœuds du cluster. Les nœuds commençant par
aks-fipsnpfont partie du pool de nœuds compatible FIPS.NAME STATUS ROLES AGE VERSION aks-fipsnp-12345678-vmss000000 Ready agent 6m4s v1.19.9 aks-fipsnp-12345678-vmss000001 Ready agent 5m21s v1.19.9 aks-fipsnp-12345678-vmss000002 Ready agent 6m8s v1.19.9 aks-nodepool1-12345678-vmss000000 Ready agent 34m v1.19.9Exécutez un déploiement avec une session interactive sur l’un des nœuds du pool de nœuds compatible FIPS à l’aide de la commande
kubectl debug.kubectl debug node/aks-fipsnp-12345678-vmss000000 -it --image=mcr.microsoft.com/dotnet/runtime-deps:6.0Dans la sortie de la session interactive, vérifiez que les bibliothèques de chiffrement FIPS sont activées. Vous devez obtenir un résultat semblable à l’exemple de sortie qui suit :
root@aks-fipsnp-12345678-vmss000000:/# cat /proc/sys/crypto/fips_enabled 1Les pools de nœuds compatibles FIPS présentent également une étiquette kubernetes.azure.com/fips_enabled=true, que les déploiements peuvent utiliser pour cibler ces pools de nœuds.
Créer un pool de nœuds Windows compatible FIPS
Créez un pool de nœuds Windows compatible FIPS à l’aide de la commande az aks nodepool add avec le
--enable-fips-imageparamètre. Contrairement aux pools de nœuds Linux, les pools de nœuds Windows partagent le même ensemble d’images.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name fipsnp \ --enable-fips-image \ --os-type WindowsVérifiez que votre pool de nœuds est activé par FIPS à l’aide de la commande az aks show et interrogez la valeur enableFIPS dans agentPoolProfiles.
az aks show \ --resource-group myResourceGroup \ --name myAKSCluster \ --query="agentPoolProfiles[].{Name:name enableFips:enableFips}" \ -o tableVérifiez que les pools de nœuds Windows ont accès aux bibliothèques de chiffrement FIPS en créant une connexion RDP à un nœud Windows dans un pool de nœuds compatible FIPS, puis vérifiez le registre. À partir de l’application Exécuter, entrez
regedit.Recherchez
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicydans le registre.Si
Enabledest défini sur 1, FIPS est activé.
Les pools de nœuds compatibles FIPS présentent également une étiquette kubernetes.azure.com/fips_enabled=true, que les déploiements peuvent utiliser pour cibler ces pools de nœuds.
Mettre à jour un pool de nœuds existant pour activer ou désactiver FIPS
Les pools de nœuds Linux existants peuvent être mis à jour pour activer ou désactiver FIPS. Si vous envisagez de migrer vos pools de nœuds de non-FIPS vers FIPS, vérifiez d’abord que votre application fonctionne correctement dans un environnement de test avant de la migrer vers un environnement de production. La validation de votre application dans un environnement de test doit empêcher les problèmes causés par le noyau FIPS bloquant certains algorithmes de chiffrement faible, tel qu'un algorithme MD4 qui n'est pas conforme aux normes FIPS.
Remarque
Lors de la mise à jour d’un pool de nœuds Linux existant pour activer ou désactiver FIPS, la mise à jour implique de passer d'une image FIPS à une image non-FIPS et vice versa. Cette mise à jour du pool de nœuds déclenche une réimagerie pour finaliser la mise à jour. La mise à jour du pool de nœuds peut prendre quelques minutes.
Prérequis
Azure CLI version 2.64.0 ou ultérieure. Pour connaître la version de l’interface, exécutez az --version. Si vous devez installer ou mettre à niveau, voir Installer Azure CLI.
Activer FIPS sur un pool de nœuds existant
Les pools de nœuds Linux existants peuvent être mis à jour pour activer FIPS. Lorsque vous mettez à jour un pool de nœuds existant, l’image de nœud passe de l’image actuelle à l’image FIPS recommandée du même SKU de système d’exploitation.
Mettez à jour un pool de nœuds à l’aide de la commande az aks nodepool update avec le
--enable-fips-imageparamètre.az aks nodepool update \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name np \ --enable-fips-imageCette commande déclenche immédiatement une nouvelle image du pool de nœuds pour déployer le système d’exploitation conforme FIPS. Cette réinitialisation se produit pendant la mise à jour du pool de nœuds. Aucune étape supplémentaire n’est requise.
Vérifiez que votre pool de nœuds est activé par FIPS à l’aide de la commande az aks show et interrogez la valeur enableFIPS dans agentPoolProfiles.
az aks show \ --resource-group myResourceGroup \ --name myAKSCluster \ --query="agentPoolProfiles[].{Name:name enableFips:enableFips}" \ -o tableL’exemple de sortie suivant montre que le pool de nœuds np est compatible avec FIPS :
Name enableFips --------- ------------ np True nodepool1 FalseListez les nœuds à l’aide de la commande
kubectl get nodes.kubectl get nodesL’exemple de sortie suivant présente la liste des nœuds du cluster. Les nœuds commençant par
aks-npfont partie du pool de nœuds compatible FIPS.NAME STATUS ROLES AGE VERSION aks-np-12345678-vmss000000 Ready agent 6m4s v1.19.9 aks-np-12345678-vmss000001 Ready agent 5m21s v1.19.9 aks-np-12345678-vmss000002 Ready agent 6m8s v1.19.9 aks-nodepool1-12345678-vmss000000 Ready agent 34m v1.19.9Exécutez un déploiement avec une session interactive sur l’un des nœuds du pool de nœuds compatible FIPS à l’aide de la commande
kubectl debug.kubectl debug node/aks-np-12345678-vmss000000 -it --image=mcr.microsoft.com/dotnet/runtime-deps:6.0Dans la sortie de la session interactive, vérifiez que les bibliothèques de chiffrement FIPS sont activées. Vous devez obtenir un résultat semblable à l’exemple de sortie qui suit :
root@aks-np-12345678-vmss000000:/# cat /proc/sys/crypto/fips_enabled 1Les pools de nœuds compatibles FIPS présentent également une étiquette kubernetes.azure.com/fips_enabled=true, que les déploiements peuvent utiliser pour cibler ces pools de nœuds.
Désactiver FIPS sur un pool de nœuds existant
Les pools de nœuds Linux existants peuvent être mis à jour pour désactiver FIPS. Lors de la mise à jour d’un pool de nœuds existant, l’image de nœud passe de l’image FIPS actuelle à l’image non FIPS recommandée du même SKU de système d’exploitation. La modification de l’image de nœud se produit après une nouvelle image.
Mettez à jour un pool de nœuds Linux à l’aide de la commande az aks nodepool update avec le
--disable-fips-imageparamètre.az aks nodepool update \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name np \ --disable-fips-imageCette commande déclenche immédiatement une nouvelle image du pool de nœuds pour déployer le système d’exploitation conforme FIPS. Cette réinitialisation se produit pendant la mise à jour du pool de nœuds. Aucune étape supplémentaire n’est requise.
Vérifiez que votre pool de nœuds n’est pas activé par FIPS à l’aide de la commande az aks show et interrogez la valeur enableFIPS dans agentPoolProfiles.
az aks show \ --resource-group myResourceGroup \ --name myAKSCluster \ --query="agentPoolProfiles[].{Name:name enableFips:enableFips}" \ -o tableL’exemple de sortie suivant montre que le pool de nœuds np n’est pas activé par FIPS :
Name enableFips --------- ------------ np False nodepool1 False
Message du jour
Transmettez l’indicateur --message-of-the-day avec l’emplacement du fichier pour remplacer le message du jour sur les nœuds Linux lors de la création du cluster ou du pool de nœuds.
Créez un cluster avec un message du jour à l’aide de la commande az aks create .
az aks create --cluster-name myAKSCluster --resource-group myResourceGroup --message-of-the-day ./newMOTD.txt
Ajoutez un pool de nœuds avec le message du jour à l’aide de la commande az aks nodepool add.
az aks nodepool add --name mynodepool1 --cluster-name myAKSCluster --resource-group myResourceGroup --message-of-the-day ./newMOTD.txt
Étapes suivantes
Pour plus d’informations sur la sécurité AKS, consultez Meilleures pratiques relatives aux mises à niveau et à la sécurité du cluster dans Azure Kubernetes Service (AKS).