Aktivera FIPS (Federal Information Process Standard) för AKS-nodpooler (Azure Kubernetes Service)
Federal Information Processing Standard (FIPS) 140-2 är en standard för amerikanska myndigheter som anger de minsta säkerhetskraven för kryptografiska moduler i IT-produkter och -system. Med Azure Kubernetes Service (AKS) kan du skapa Linux- och Windows-nodpooler med FIPS 140-2 aktiverat. Distributioner som körs på FIPS-aktiverade nodpooler kan använda dessa kryptografiska moduler för att öka säkerheten och uppfylla säkerhetskontroller som en del av efterlevnaden av FedRAMP. Mer information om FIPS 140-2 finns i Federal Information Processing Standard (FIPS) 140.
Förutsättningar
- Azure CLI version 2.32.0 eller senare installerad och konfigurerad. Kör
az --version
för att hitta versionen. Mer information om hur du installerar eller uppgraderar Azure CLI finns i Installera Azure CLI.
Kommentar
AKS Monitoring Addon stöder FIPS-aktiverade nodpooler med Ubuntu, Azure Linux och Windows från och med Agent version 3.1.17 (Linux) och Win-3.1.17 (Windows).
Begränsningar
- FIPS-aktiverade nodpooler har följande begränsningar:
- FIPS-aktiverade nodpooler kräver Kubernetes version 1.19 och senare.
- Om du vill uppdatera de underliggande paketen eller modulerna som används för FIPS måste du använda Node Image Upgrade.
- Containeravbildningar på FIPS-noderna har inte utvärderats för FIPS-efterlevnad.
- Monteringen av en CIFS-resurs misslyckas eftersom FIPS inaktiverar vissa autentiseringsmoduler. Information om det här problemet finns i Fel vid montering av en filresurs i en FIPS-aktiverad nodpool.
Viktigt!
Den FIPS-aktiverade Linux-avbildningen är en annan avbildning än den Linux-standardbild som används för Linux-baserade nodpooler. Om du vill aktivera FIPS i en nodpool måste du skapa en ny Linux-baserad nodpool. Du kan inte aktivera FIPS i befintliga nodpooler.
FIPS-aktiverade nodavbildningar kan ha olika versionsnummer, till exempel kernelversion, än bilder som inte är FIPS-aktiverade. Uppdateringscykeln för FIPS-aktiverade nodpooler och nodbilder kan skilja sig från nodpooler och avbildningar som inte är FIPS-aktiverade.
Skapa en FIPS-aktiverad Linux-nodpool
Skapa en FIPS-aktiverad Linux-nodpool med kommandot
az aks nodepool add
med parametern--enable-fips-image
.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name fipsnp \ --enable-fips-image
Kommentar
Du kan också använda parametern
--enable-fips-image
az aks create
med kommandot när du skapar ett kluster för att aktivera FIPS i standardnodpoolen. När du lägger till nodpooler i ett kluster som skapats på det här sättet måste du fortfarande använda parametern--enable-fips-image
när du lägger till nodpooler för att skapa en FIPS-aktiverad nodpool.Kontrollera att nodpoolen är FIPS-aktiverad med kommandot
az aks show
och frågan för värdet enableFIPS i agentPoolProfiles.az aks show \ --resource-group myResourceGroup \ --name myAKSCluster \ --query="agentPoolProfiles[].{Name:name enableFips:enableFips}" \ -o table
Följande exempelutdata visar att fipsnp-nodpoolen är FIPS-aktiverad:
Name enableFips --------- ------------ fipsnp True nodepool1 False
Visa en lista över noderna med kommandot
kubectl get nodes
.kubectl get nodes
Följande exempelutdata visar en lista över noderna i klustret. Noderna som börjar med
aks-fipsnp
ingår i den FIPS-aktiverade nodpoolen.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.9
Kör en distribution med en interaktiv session på en av noderna i den FIPS-aktiverade nodpoolen
kubectl debug
med kommandot .kubectl debug node/aks-fipsnp-12345678-vmss000000 -it --image=mcr.microsoft.com/dotnet/runtime-deps:6.0
Kontrollera att FIPS kryptografiska bibliotek är aktiverade från den interaktiva sessionens utdata. Dina utdata bör se ut ungefär som följande exempelutdata:
root@aks-fipsnp-12345678-vmss000000:/# cat /proc/sys/crypto/fips_enabled 1
FIPS-aktiverade nodpooler har också en kubernetes.azure.com/fips_enabled=true etikett, som distributioner kan använda för att rikta in sig på dessa nodpooler.
Skapa en FIPS-aktiverad Windows-nodpool
Skapa en FIPS-aktiverad Windows-nodpool med kommandot
az aks nodepool add
med parametern--enable-fips-image
. Till skillnad från Linux-baserade nodpooler delar Windows-nodpooler samma avbildningsuppsättning.az aks nodepool add \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name fipsnp \ --enable-fips-image \ --os-type Windows
Kontrollera att nodpoolen är FIPS-aktiverad med kommandot
az aks show
och frågan för värdet enableFIPS i agentPoolProfiles.az aks show \ --resource-group myResourceGroup \ --name myAKSCluster \ --query="agentPoolProfiles[].{Name:name enableFips:enableFips}" \ -o table
Kontrollera att Windows-nodpooler har åtkomst till FIPS kryptografiska bibliotek genom att skapa en RDP-anslutning till en Windows-nod i en FIPS-aktiverad nodpool och kontrollera registret. Från kör-programmet anger du
regedit
.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy
Leta efter i registret.Om
Enabled
är inställt på 1 aktiveras FIPS.
FIPS-aktiverade nodpooler har också en kubernetes.azure.com/fips_enabled=true etikett, som distributioner kan använda för att rikta in sig på dessa nodpooler.
Nästa steg
Mer information om AKS-säkerhet finns i Metodtips för klustersäkerhet och uppgraderingar i Azure Kubernetes Service (AKS).