Azure Kubernetes Service (AKS) kümeleri için Federal Bilgi İşleme Standardı'nı (FIPS) etkinleştirme (önizleme)

Federal Bilgi İşleme Standardı (FIPS), bilgi teknolojisi ürün ve sistemlerindeki şifreleme modülleri için minimum güvenlik gereksinimlerini tanımlayan bir ABD kamu standardıdır. Bu makalede, Azure Kubernetes Service (AKS) için küme düzeyinde FIPS modunun nasıl etkinleştirileceği açıklanır. Küme düzeyinde FIPS, kümedeki her düğüm havuzunun FIPS özellikli bir işletim sistemi görüntüsü kullanmasını zorlar ve FIPS uyumlu olmayan AKS tarafından yönetilen bileşenleri engeller. Bu özellik, AKS kümelerinde FIPS kullanımını güvence altına almak için tek ve bildirim temelli bir yönteme ihtiyaç duyan FedRAMP gibi uyumluluk gereksinimleri olan müşterilere yöneliktir. FIPS hakkında daha fazla bilgi için bkz. Federal Bilgi İşleme Standardı (FIPS) 140.

Important

AKS önizleme özellikleri self servis ve kabul temelinde kullanılabilir. Önizlemeler "olduğu gibi" ve "mevcut olduğu şekilde" sağlanmakta olup, hizmet seviyesi anlaşmalarına ve sınırlı garantilere dahil edilmemektedir. AKS önizlemeleri, müşteri desteği ekibi tarafından maksimum çaba gösterilerek kısmen ele alınmaktadır. Bu nedenle, bu özellikler üretim kullanımı için tasarlanmamıştır. Daha fazla bilgi için aşağıdaki destek makalelerine bakın:

AKS'de FIPS modu nedir?

FIPS 140-2/140-3, şifreleme modülleri için ABD hükümeti standartlarını tanımlar. AKS kümesinde FIPS modunu etkinleştirdiğinizde:

  • Windows düğüm havuzları dahil olmak üzere kümedeki tüm düğüm havuzlarının FIPS özellikli işletim sistemi görüntülerini kullanması gerekir.
  • AKS, FIPS olmayan düğüm havuzlarının oluşturulmasını engeller.
  • AKS, FIPS uyumluluğu için doğrulanmamış AKS tarafından yönetilen eklentileri, özellikleri ve uzantıları engeller.

Küme düzeyinde FIPS (properties.enableFIPS), her bir düğüm havuzundaki FIPS'ten (enableFIPS her aracı havuzunda) ayrıdır. Küme düzeyinde FIPS, her düğüm havuzunun FIPS etkin olmasını gerektirir, ancak küme düzeyinde FIPS'nin devre dışı bırakılması, düğüm havuzlarınızda FIPS'yi devre dışı bırakmaz. FIPS özellikli düğüm havuzları hakkında daha fazla bilgi için bkz. AKS düğüm havuzları için FIPS'yi etkinleştirme.

Important

FIPS modu AKS tarafından yönetilen altyapı ve bileşenler için geçerlidir. Müşteriler , kendi uygulama kapsayıcılarının FIPS uyumlu şifreleme kullanmasını sağlamakla sorumludur.

Prerequisites

  • Etkin bir Azure aboneliği. Eğer bir Azure aboneliğiniz yoksa, başlamadan önce ücretsiz bir hesap oluşturun.
  • Azure CLI sürüm 2.86.0 veya üzerinin yüklü ve yapılandırılmış olması gerekir. Sürümü bulmak için az --version komutunu çalıştırın. Azure CLI'yı yükleme veya yükseltme hakkında daha fazla bilgi için bkz. Azure CLI'yi yükleme.
  • Azure CLI uzantısının aks-preview en son sürümü. --enable-fips ve --disable-fips parametreleri yalnızca aks-preview uzantısında kullanılabilir. Yönergeler için bkz. Azure CLI uzantısını aks-preview yükleyin.
  • k8s-extension Küme uzantılarını listelemek ve kaldırmak için kullanılan Azure CLI uzantısı. az extension add --upgrade --name k8s-extension komutunu çalıştırarak yükleyin.
  • kubectl yüklendi. komutunu kullanarak az aks install-cli yerel olarak yükleyebilirsiniz.
  • Aboneliğinizde kayıtlı olan EnableFIPSPreview özellik bayrağı. Yönergeler için bkz. EnableFIPSPreview özellik bayrağını kaydetme.
  • Kubernetes sürüm 1.35.0 veya üzeri. Bölgenizde kullanılabilen sürümleri görmek için az aks get-versions komutunu kullanın. Önceki bir sürümde FIPS özellikli bir kümenin mevcut durumu korunmaz: AKS, küme 1.35.0 veya sonraki bir sürüme yükseltilene ya da FIPS devre dışı bırakılana kadar kümedeki her güncelleştirmeyi reddeder.
  • Azure Resource Manager (ARM) şablonlarını veya REST API’yi kullanıyorsanız, Microsoft.ContainerService/managedClusters ve 2026-03-02-preview için Microsoft.ContainerService/managedClusters/agentPools veya sonraki bir API sürümünü kullanın.

aks-preview Azure CLI uzantısını yükleme

  1. aks-preview uzantısını az extension add komutunu kullanarak yükleyin.

    az extension add --name aks-preview
    
  2. komutunu kullanarak uzantının en son sürümüne güncelleştirin az extension update .

    az extension update --name aks-preview
    

Ortam değişkenlerini ayarlama

Bu makalede kullandığınız kaynaklar için aşağıdaki ortam değişkenlerini ayarlayın. Yer tutucu değerlerini kendi değerlerinizle değiştirin. Ardından az account set komutunu kullanarak abonelik bağlamınızı ayarlayın.

export SUBSCRIPTION_ID="<subscription-id>"
export RESOURCE_GROUP="myResourceGroup"
export CLUSTER_NAME="myAKSCluster"
export NODE_POOL_NAME="fipsnp"

az account set --subscription $SUBSCRIPTION_ID

Özellik bayrağını EnableFIPSPreview kaydetme

  1. EnableFIPSPreview komutunu kullanarak az feature register özellik bayrağını kaydedin.

    az feature register --namespace "Microsoft.ContainerService" --name "EnableFIPSPreview"
    

    Durumun Kayıtlı olarak gösterilmesi birkaç dakika sürer.

  2. komutunu kullanarak az feature show kayıt durumunu doğrulayın.

    az feature show --namespace "Microsoft.ContainerService" --name "EnableFIPSPreview"
    
  3. Durum Kayıtlı olarak gösterildiğinde, az provider register komutunu kullanarak Microsoft.ContainerService kaynak sağlayıcısının kaydını yenileyin.

    az provider register --namespace Microsoft.ContainerService
    

Limitations

FIPS özellikli AKS kümeleri kullanılırken aşağıdaki sınırlamalar geçerlidir.

Engellenen bileşenler

AKS tarafından yönetilen bazı bileşenler henüz FIPS uyumlu şifreleme kitaplıklarıyla derlenmemiştir. FiPS özellikli bir kümede bu bileşenleri etkinleştiremezsiniz ve bunları kullanan bir kümede FIPS'yi etkinleştiremezsiniz. Aşağıdaki tabloda engellenen bileşenler ve her birini devre dışı bırakmak için Azure CLI komutu listelenmiştir. Her --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME komuta az aks ekleyin.

Important

Bu liste yalnızca AKS tarafından yönetilen bileşenler için geçerlidir. Müşteri uygulama kapsayıcıları AKS tarafından doğrulanmaz.

Engellenen bileşen Komutu devre dışı bırak
cost-analysis az aks update --disable-cost-analysis
approuting az aks approuting disable
defender(Kapsayıcılar için Microsoft Defender güvenlik izleme) az aks update --disable-defender
azure-monitor (yönetilen Prometheus ölçümleri, Kapsayıcı içgörüleri ve uygulama izleme) az aks update --disable-azure-monitor-metrics
az aks disable-addons --addons monitoring
az aks update --disable-azure-monitor-app-monitoring
blob-csi az aks update --disable-blob-driver
ACCSGXDevicePlugin az aks disable-addons --addons confcom
IngressApplicationGateway az aks disable-addons --addons ingress-appgw
calico, azure-npm az aks update --network-policy none
cilium Mevcut bir kümeden Cilium'u kaldıramazsınız. Yeni bir küme oluşturun.
acns-observability az aks update --disable-acns veya az aks update --disable-acns-observability
OpenServiceMesh az aks disable-addons --addons open-service-mesh
kaito az aks update --disable-ai-toolchain-operator
Istio tabanlı hizmet ağı eklentisiasm-1-26 öncesindeki düzeltmeleri Revizyona asm-1-26 veya sonraki sürüme yükseltin. Yönergeler için bkz. Istio tabanlı hizmet ağı eklentisini yükseltme.
Windows GPU sürücüsü yüklemesi Windows GPU düğüm havuzu eklemek için --gpu-driver none kullanarak sürücü yüklemesini atlayın.
Flux (GitOps) gibi FIPS uyumlu olmayan küme uzantıları. FIPS sütununa uzantı yetenek matrisi içinde bakın. az k8s-extension delete --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --cluster-type managedClusters --name <extension-name>

Azure İlkesi ataması gibi bir otomasyon FIPS özellikli bir kümeye FIPS uyumlu olmayan bir uzantı yüklemeye çalışırsa, AKS yüklemeyi reddeder ve uzantı bir Failed tedarik durumu gösterir. Küme etkilenmiyor.

FIPS özellikli AKS kümesi oluşturma

Kümeyi oluştururken --enable-fips bayrağını kullanarak FIPS'yi etkinleştirebilirsiniz. Küme engellenen bileşenlerin hiçbirini kullanamaz.

  1. az aks create parametresiyle --enable-fips komutunu kullanarak FIPS özellikli bir AKS kümesi oluşturun.

    az aks create \
        --name $CLUSTER_NAME \
        --resource-group $RESOURCE_GROUP \
        --kubernetes-version 1.35 \
        --enable-fips \
        --generate-ssh-keys
    
  2. komutunu kullanarak az aks show değerini sorgulayın ve kümenizin FIPS etkin olduğunu doğrulayın.

    az aks show \
        --name $CLUSTER_NAME \
        --resource-group $RESOURCE_GROUP \
        --query "enableFips"
    

    Aşağıdaki örnek çıktıda kümenizin FIPS özellikli olduğu gösterilmektedir:

    true
    

    Komut true döndürmezse, kümeyi oluştururken aks-preview uzantısını yüklememiş olursunuz. Uzantı olmadan Azure CLI, --enable-fips-image öğesini --enable-fips olarak değerlendirir ve FIPS'yi yalnızca varsayılan düğüm havuzunda etkinleştirir. Uzantıyı aks-preview yükleyin ve ardından mevcut kümede FIPS'yi etkinleştirin.

  3. FIPS özellikli bir küme oluşturmak otomatik olarak FIPS özellikli bir düğüm havuzu oluşturur. Bunu, düğüm havuzu yapılandırmasını komutunu kullanarak inceleyip az aks show içinde enableFips değerini sorgulayarak doğrulayabilirsiniz.

    az aks show \
        --name $CLUSTER_NAME \
        --resource-group $RESOURCE_GROUP \
        --query "agentPoolProfiles[].{Name:name, enableFips:enableFips}" \
        --output table
    

    Aşağıdaki örnek çıktı, varsayılan düğüm havuzunun FIPS etkin olduğunu gösterir:

    Name       EnableFips
    ---------  ----------
    nodepool1  True
    

FIPS'yi etkinleştirmek veya devre dışı bırakmak için mevcut AKS kümesini güncelleştirme

FiPS'yi mevcut bir kümede etkinleştirmek için önce kümeyi hazırlayın ve ardından güncelleştirin.

Kümenizi FIPS için hazırlayın

FIPS'yi küme düzeyinde etkinleştirmeden önce aşağıdaki adımları tamamlayın.

  1. Kümenin Kubernetes sürüm 1.35.0 veya üzerini çalıştırdığından emin olun. Kümeniz önceki bir sürümü çalıştırıyorsa, önce kümeyi yükseltin. Yönergeler için bkz. AKS kümesini yükseltme.

  2. Her düğüm havuzunun FIPS özellikli olduğundan emin olun. FIPS olmayan düğüm havuzlarını FIPS özellikli görüntüleri kullanacak şekilde güncelleştirin. Yönergeler için bkz. FIPS'yi etkinleştirmek veya devre dışı bırakmak için mevcut düğüm havuzunu güncelleştirme.

    Windows Server 2022 düğüm havuzları işletim sisteminde FIPS etkinleştirilmiş olarak zaten çalışır, ancak siz ayarlamadığınız sürece enableFips özellikleri False olur. Bu düğüm havuzlarında da çalıştırın az aks nodepool update --enable-fips-image. Bu düğüm havuzları için güncelleştirme bu özelliği ayarlar ve düğüm görüntüsünü değiştirmez.

  3. FIPS uyumlu olmayan küme uzantıları da dahil olmak üzere Engellenen bileşenler'de listelenen tüm bileşenleri devre dışı bırakın veya kaldırın. Kümenizdeki uzantıları listelemek için az k8s-extension list komutunu kullanın. Uzantıyı kaldırmak için az k8s-extension delete komutunu kullanın. Daha fazla bilgi için bkz. AKS uzantılarını yönetme.

    az k8s-extension list \
        --resource-group $RESOURCE_GROUP \
        --cluster-name $CLUSTER_NAME \
        --cluster-type managedClusters \
        --query "[].{name:name, extensionType:extensionType, state:provisioningState}" \
        --output table
    

    Note

    Bir uzantı, küme oluşturulduktan sonra, örneğin bir Azure İlkesi ataması tarafından otomatik olarak yüklenebilir. FIPS'yi etkinleştirmeden hemen önce uzantıları yeniden listeleyin. Bir atama FIPS uyumlu olmayan bir uzantının yüklenmesine neden olmaya devam ediyorsa, kümeyi bu atamadan muaf tut.

FIPS'yi etkinleştirmek için mevcut kümeyi güncelleştirme

Kümenizi hazırladıktan sonra FIPS'yi etkinleştirin. Küme bir gereksinimi karşılamıyorsa AKS güncelleştirmeyi reddeder ve hata iletisi bunun nedenini açıklar. Yardım için bkz. Küme düzeyinde FIPS hatalarını giderme.

  1. --enable-fips parametresiyle --enable-fips komutunu kullanarak az aks update AKS kümesini güncelleştirin.

    az aks update \
        --name $CLUSTER_NAME \
        --resource-group $RESOURCE_GROUP \
        --enable-fips
    
  2. Kümenizin FIPS etkin olduğunu, komutunu kullanarak ve az aks show değerini sorgulayarak doğrulayın.

    az aks show \
        --name $CLUSTER_NAME \
        --resource-group $RESOURCE_GROUP \
        --query "enableFips"
    

    Aşağıdaki örnek çıktıda kümenizin FIPS özellikli olduğu gösterilmektedir:

    true
    

FIPS'yi devre dışı bırakmak için mevcut kümeyi güncelleştirme

FIPS'yi devre dışı bırakmak için mevcut kümeyi güncelleştirebilirsiniz. FIPS modunu devre dışı bıraktığınızda:

  • Küme düzeyinde FIPS zorlaması kaldırılır.
  • Mevcut düğüm havuzları değiştirilmez.
  • Aynı kümede hem FIPS hem de FIPS olmayan düğüm havuzlarını çalıştırabilirsiniz.
  • FIPS etkinken daha önce engellenmiş AKS uzantılarını ve eklentilerini dağıtabilirsiniz.
  • Yeni düğüm havuzlarının artık FIPS etkin olması gerekmez.

Note

FIPS'nin devre dışı bırakılması, FIPS özellikli düğüm havuzlarını otomatik olarak FIPS olmayan havuzlara dönüştürmez. Gerekirse düğüm havuzlarını tek tek güncelleştirebilirsiniz. Yönergeler için bkz. Mevcut düğüm havuzunda FIPS'yi devre dışı bırakma. Windows Server 2025 düğüm havuzları FIPS'yi devre dışı bırakamaz.

  1. AKS kümesini --disable-fips parametresiyle az aks update komutunu kullanarak güncelleştirin.

    az aks update \
        --name $CLUSTER_NAME \
        --resource-group $RESOURCE_GROUP \
        --disable-fips
    
  2. komutunu kullanarak az aks show değerini sorgulayıp kümenizde FIPS'in etkin olmadığını doğrulayın.

    az aks show \
        --name $CLUSTER_NAME \
        --resource-group $RESOURCE_GROUP \
        --query "enableFips"
    

    Aşağıdaki örnek çıktıda kümenizin FIPS etkin olmadığı gösterilmektedir:

    false
    

FIPS özellikli AKS kümesine düğüm havuzu ekleme

FIPS özellikli bir kümedeki her yeni düğüm havuzunun FIPS etkin olması gerekir. az aks nodepool add parametresiyle --enable-fips-image komutunu kullanarak bir düğüm havuzu ekleyin. --enable-fips-image öğesini atlarsanız, AKS isteği reddeder.

az aks nodepool add \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --name $NODE_POOL_NAME \
    --enable-fips-image

Küme düzeyinde FIPS hatalarını giderme

İstek küme düzeyinde FIPS ile çakıştığında AKS, isteği genellikle nedenini açıklayan bir BadRequest hatasıyla reddeder. Yaygın hata iletileri ve bunların nasıl çözüleceğini öğrenmek için bkz. AKS'de küme düzeyinde FIPS hatalarını giderme.

Kaynakları temizle

Bu makalede oluşturduğunuz kaynaklara artık ihtiyacınız kalmadığında, az group delete komutunu kullanarak kaynak grubunu ve tüm ilgili kaynakları silin.

az group delete --name $RESOURCE_GROUP --yes --no-wait