Zaufane uruchamianie dla usługi Azure Kubernetes Service (AKS)

Zaufane uruchamianie zwiększa bezpieczeństwo maszyn wirtualnych generacji 2, chroniąc przed zaawansowanymi i trwałymi technikami ataków. Umożliwia administratorom wdrażanie węzłów AKS opartych na bazowych maszynach wirtualnych, z zweryfikowanymi i podpisanymi programami rozruchowymi, jądrami systemu operacyjnego i sterownikami. Dzięki użyciu bezpiecznego i mierzonego rozruchu administratorzy uzyskują szczegółowe informacje i pewność integralności całego łańcucha rozruchu.

Ten artykuł pomaga zrozumieć tę nową funkcję i jak ją zaimplementować.

Ważne

Począwszy od 30 listopada 2025 r., usługa Azure Kubernetes Service (AKS) nie obsługuje już ani nie zapewnia aktualizacji zabezpieczeń dla systemu Azure Linux 2.0. Obraz węzła systemu Azure Linux 2.0 jest zamrożony w wydaniu202512.06.0. Od 31 października 2026 r. obrazy węzłów zostaną usunięte i nie będzie można skalować pul węzłów. Przeprowadź migrację do obsługiwanej wersji systemu Linux platformy Azure, uaktualniając pule węzłów do obsługiwanej wersji rozwiązania Kubernetes lub migrując do systemu osSku AzureLinux3. Aby uzyskać więcej informacji, zapoznaj się z zgłoszeniem dotyczącym wycofania na GitHubie i ogłoszeniem o wycofaniu aktualizacji platformy Azure. Aby być na bieżąco z ogłoszeniami i aktualizacjami, śledź notatki o wydaniu AKS.

Omówienie

Zaufane uruchamianie składa się z kilku skoordynowanych technologii infrastruktury, które można włączyć niezależnie. Każda technologia zapewnia kolejną warstwę obrony przed zaawansowanymi zagrożeniami.

  • vTPM — Trusted Launch wprowadza zwirtualizowaną wersję sprzętowego modułu TPM (Trusted Platform Module), zgodną ze specyfikacją TPM 2.0. Służy jako wydzielone, bezpieczne repozytorium kluczy i pomiarów. Zaufane uruchamianie zapewnia maszynie wirtualnej własne dedykowane wystąpienie modułu TPM, które działa w bezpiecznym środowisku, niedostępnym z poziomu jakiejkolwiek maszyny wirtualnej. vTPM umożliwia poświadczanie poprzez pomiar całego łańcucha rozruchowego Twojej maszyny wirtualnej (UEFI, system operacyjny, system i sterowniki). Zaufane uruchamianie używa vTPM do przeprowadzania zdalnego uwierzytelniania przez chmurę. Jest on używany do sprawdzania kondycji platformy i podejmowania decyzji opartych na zaufaniu. Jako kontrola integralności funkcja Trusted Launch może kryptograficznie poświadczyć, że maszyna wirtualna została uruchomiona poprawnie. Jeśli proces zakończy się niepowodzeniem, prawdopodobnie dlatego, że maszyna wirtualna uruchamia nieautoryzowany składnik, Microsoft Defender dla Chmury wystawia alerty integralności. Alerty zawierają szczegółowe informacje o tym, które składniki nie przeszły testów integralności.

  • Bezpieczny rozruch — Bezpieczny rozruch jest podstawą zaufanego uruchamiania dla Twojej maszyny wirtualnej. Ten tryb, który jest implementowany w oprogramowaniu układowym platformy, chroni przed instalacją pakietów rootkit opartych na złośliwym oprogramowaniu i zestawów rozruchowych. Bezpieczny rozruch działa, aby upewnić się, że mogą być uruchamiane tylko podpisane systemy operacyjne i sterowniki. Ustanawia „korzeń zaufania” dla stosu oprogramowania na Twojej maszynie wirtualnej. Po włączeniu bezpiecznego rozruchu wszystkie składniki rozruchu systemu operacyjnego (moduł ładujący rozruchu, jądro, sterowniki jądra) muszą być podpisane przez zaufanych wydawców. Zarówno system Windows, jak i wybierz dystrybucje systemu Linux obsługują bezpieczny rozruch. Jeśli bezpieczny rozruch nie może uwierzytelnić obrazu podpisanego przez zaufanego wydawcę, maszyna wirtualna nie może uruchomić. Aby uzyskać więcej informacji, zobacz Bezpieczny rozruch.

Zanim rozpoczniesz

  • Interfejs wiersza polecenia platformy Azure w wersji 2.66.0 lub nowszej. Uruchom polecenie az --version , aby znaleźć wersję i uruchomić polecenie az upgrade , aby uaktualnić wersję. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
  • Secure Boot wymaga podpisanych programów rozruchowych, jąder systemu operacyjnego i sterowników.

Ograniczenia

  • Usługa AKS obsługuje zaufane uruchamianie na platformie Kubernetes w wersji 1.25.2 lub nowszej.
  • Zaufane uruchamianie obsługuje tylko maszyny wirtualne platformy Azure 2. generacji.
  • Grupy węzłów z systemem operacyjnym Windows Server nie są obsługiwane.
  • Nie można włączyć funkcji Trusted Launch w tej samej puli węzłów co Arm64, Pod Sandboxing lub Confidential VM. Aby uzyskać więcej informacji, zobacz dokumentację obrazów węzłów.
  • Zaufane uruchamianie można włączyć tylko w tej samej puli węzłów co FIPS z systemem Ubuntu 22.04.
  • Zaufane uruchamianie nie obsługuje węzłów wirtualnych.
  • Zestawy dostępności nie są obsługiwane, tylko zestawy skalowania maszyn wirtualnych.
  • Aby włączyć bezpieczny rozruch w pulach węzłów procesora GPU przy użyciu systemu operacyjnego Ubuntu, należy pominąć instalowanie sterownika procesora GPU (--gpu-driver None). Aby uzyskać więcej informacji, zobacz Pomijanie instalacji sterownika procesora GPU i Używanie procesorów GPU FIRMY NVIDIA w Azure Kubernetes Service (AKS). To ograniczenie nie dotyczy uruchamiania obciążeń procesora GPU w systemach operacyjnych Azure Linux lub Azure Container Linux.
  • Dyski efemeryczne systemu operacyjnego można tworzyć przy użyciu funkcji Trusted Launch, a ta funkcja jest obsługiwana we wszystkich regionach. Jednak nie wszystkie rozmiary maszyn wirtualnych są obsługiwane. Aby uzyskać więcej informacji, zobacz rozmiary efemeryczne systemu operacyjnego Trusted Launch.
  • Flatcar Container Linux dla AKS nie obsługuje Trusted Launch na AKS.
  • Trusted Launch nie jest obsługiwany w dostawcy Terraform AzureRM (azurerm). Aby wdrożyć pule węzłów Trusted Launch, skorzystaj z instrukcji dotyczących Azure CLI, szablonów ARM lub Bicep zawartych w tym artykule.

Utwórz klaster AKS z włączoną funkcją zaufanego uruchamiania

Podczas tworzenia klastra włączenie vTPM lub Secure Boot automatycznie konfiguruje pule węzłów w celu używania dostosowanego obrazu Trusted Launch. Ten obraz jest specjalnie skonfigurowany do obsługi funkcji zabezpieczeń włączonych przez Trusted Launch.

  1. Utwórz klaster AKS za pomocą polecenia az aks create. Przed uruchomieniem polecenia przejrzyj następujące parametry:

    • --name: wprowadź unikatową nazwę klastra usługi AKS, taką jak myAKSCluster.
    • --resource-group: wprowadź nazwę istniejącej grupy zasobów do hostowania zasobu klastra usługi AKS.
    • --enable-secure-boot: umożliwia bezpieczny rozruch do uwierzytelniania obrazu podpisanego przez zaufanego wydawcę.
    • --enable-vtpm: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    Uwaga

    Secure Boot wymaga podpisanych programów rozruchowych, jąder systemu operacyjnego i sterowników. Jeśli po włączeniu bezpiecznego rozruchu węzły nie są uruchamiane, możesz sprawdzić, które składniki rozruchu są odpowiedzialne za błędy bezpiecznego rozruchu na maszynie wirtualnej z systemem Linux platformy Azure. Zobacz weryfikowanie błędów bezpiecznego rozruchu.

    Poniższy przykład tworzy klaster o nazwie myAKSCluster z jednym węzłem w grupie myResourceGroup i włącza protokół Secure Boot i vTPM:

    az aks create \
        --name myAKSCluster \
        --resource-group myResourceGroup \
        --node-count 1 \
        --enable-secure-boot \
        --enable-vtpm \
        --generate-ssh-keys
    
  2. Uruchom następujące polecenie, aby uzyskać poświadczenia dostępu dla klastra Kubernetes. Użyj polecenia az aks get-credentials i zastąp wartości nazwy klastra i nazwy grupy zasobów.

    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    
  1. Utwórz szablon z zaufanymi parametrami uruchamiania. Przed utworzeniem szablonu przejrzyj następujące parametry:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W szablonie podaj wartości dla enableVTPM i enableSecureBoot. Ten sam schemat używany do wdrażania CLI istnieje w definicji w obszarze Microsoft.ContainerService/managedClusters/agentPools, jak pokazano w poniższym przykładzie:

    "properties": {
        ...,
        "securityProfile": {
            "enableVTPM": true,
            "enableSecureBoot": true,
        }
    }
    
  2. Wdróż szablon z włączonym vTPM i bezpiecznym rozruchem na swoim klastrze. Zapoznaj się z Wdrożenie klastra AKS przy użyciu szablonu ARM aby uzyskać szczegółowe instrukcje.

  1. Utwórz plik Bicep z parametrami funkcji Trusted Launch. Przed utworzeniem pliku przejrzyj następujące parametry:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W pliku Bicep podaj wartości dla enableVTPM i enableSecureBoot. Ten sam schemat używany do wdrażania CLI istnieje w definicji w obszarze Microsoft.ContainerService/managedClusters/agentPools, jak pokazano w poniższym przykładzie:

    properties: {
      // ...
      securityProfile: {
        enableVTPM: true
        enableSecureBoot: true
      }
    }
    
  2. Wdróż plik Bicep przy użyciu protokołu vTPM i bezpiecznego rozruchu włączonego w klastrze. Aby uzyskać szczegółowe instrukcje, zobacz Deploy an AKS cluster using a Bicep file (Wdrażanie klastra usługi AKS przy użyciu pliku Bicep).

Dostawca AzureRM dla Terraform (azurerm) nie obsługuje funkcji Trusted Launch, ponieważ nie udostępnia ustawień puli węzłów Trusted Launch. Aby utworzyć klaster AKS z włączoną funkcją Trusted Launch, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure (Azure CLI), szablonu ARM lub narzędzia Bicep zawartych w tym artykule.

Portal Azure nie obsługuje tworzenia klastra AKS z włączoną funkcją Trusted Launch. Aby utworzyć klaster AKS z włączoną funkcją Trusted Launch, skorzystaj z opisanych w tym artykule instrukcji dotyczących interfejsu wiersza polecenia platformy Azure, szablonu ARM lub narzędzia Bicep.

Dodaj pulę węzłów z włączonym zaufanym uruchamianiem

Po utworzeniu puli węzłów włączenie vTPM lub bezpiecznego rozruchu automatycznie konfiguruje pule węzłów do użycia dostosowanego obrazu Trusted Launch. Ten obraz jest specjalnie skonfigurowany do obsługi funkcji zabezpieczeń włączonych przez Trusted Launch.

  1. Dodaj przy użyciu polecenia az aks nodepool add pulę węzłów z włączonym zaufanym uruchamianiem. Przed uruchomieniem polecenia przejrzyj następujące parametry:

    • --cluster-name: Wprowadź nazwę klastra AKS.
    • --resource-group: wprowadź nazwę istniejącej grupy zasobów do hostowania zasobu klastra usługi AKS.
    • --name: wprowadź unikatową nazwę puli węzłów. Nazwa puli węzłów może zawierać tylko małe litery alfanumeryczne i musi zaczynać się od małej litery. W przypadku pul węzłów systemu Linux długość musi wynosić od 1 do 11 znaków.
    • --node-count: liczba węzłów w puli agentów Kubernetes. Wartość domyślna to 3.
    • --enable-secure-boot: Umożliwia funkcji Secure Boot uwierzytelnianie obrazu podpisanego przez zaufanego wydawcę.
    • --enable-vtpm: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    Uwaga

    Secure Boot wymaga podpisanych programów rozruchowych, jąder systemu operacyjnego i sterowników. Jeśli po włączeniu bezpiecznego rozruchu węzły nie są uruchamiane, możesz sprawdzić, które składniki rozruchu są odpowiedzialne za błędy bezpiecznego rozruchu na maszynie wirtualnej z systemem Linux platformy Azure. Zobacz weryfikowanie błędów bezpiecznego rozruchu.

    W poniższym przykładzie wdrożono pulę węzłów z włączoną funkcją vTPM i bezpieczny rozruch w klastrze o nazwie myAKSCluster z trzema węzłami:

    az aks nodepool add --resource-group myResourceGroup --cluster-name myAKSCluster --name mynodepool --node-count 3 --enable-vtpm --enable-secure-boot
    
  2. Sprawdź, czy pula węzłów używa obrazu Trusted Launch.

    Zaufane węzły uruchamiania mają następujące dane wyjściowe:

    • Wersja obrazu węzła zawierająca element "TL", taki jak "AKSUbuntu-2204-gen2TLcontainerd".
    • Element "Security-type" powinien mieć wartość "Trusted Launch".
    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    
  1. Utwórz szablon z zaufanymi parametrami uruchamiania. Przed utworzeniem szablonu przejrzyj następujące parametry:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W szablonie podaj wartości dla enableVTPM i enableSecureBoot. Ten sam schemat używany do wdrażania CLI istnieje w definicji w obszarze Microsoft.ContainerService/managedClusters/agentPools, jak pokazano w poniższym przykładzie:

    "properties": {
        ...,
        "securityProfile": {
            "enableVTPM": true,
            "enableSecureBoot": true,
        }
    }
    
  2. Wdróż szablon z włączonym vTPM i bezpiecznym rozruchem na swoim klastrze. Zapoznaj się z Wdrożenie klastra AKS przy użyciu szablonu ARM aby uzyskać szczegółowe instrukcje.

  1. Utwórz plik Bicep z parametrami funkcji Trusted Launch. Przed utworzeniem pliku przejrzyj następujące parametry:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W pliku Bicep podaj wartości dla enableVTPM i enableSecureBoot. Ten sam schemat używany do wdrażania CLI istnieje w definicji w obszarze Microsoft.ContainerService/managedClusters/agentPools, jak pokazano w poniższym przykładzie:

    properties: {
      // ...
      securityProfile: {
        enableVTPM: true
        enableSecureBoot: true
      }
    }
    
  2. Wdróż plik Bicep z włączonymi funkcjami vTPM i bezpiecznego rozruchu w swoim klastrze. Aby uzyskać szczegółowe instrukcje, zobacz Deploy an AKS cluster using a Bicep file (Wdrażanie klastra usługi AKS przy użyciu pliku Bicep).

Dostawca AzureRM dla Terraform (azurerm) nie obsługuje funkcji Trusted Launch, ponieważ nie udostępnia ustawień puli węzłów Trusted Launch. Aby dodać pulę węzłów z włączoną funkcją Trusted Launch, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure (Azure CLI), szablonów ARM lub narzędzia Bicep zawartych w tym artykule.

Portal Azure nie obsługuje dodawania puli węzłów z włączonym zaufanym uruchamianiem. Aby dodać pulę węzłów z włączoną funkcją Trusted Launch, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure, szablonu ARM lub narzędzia Bicep zawartych w tym artykule.

Dodaj pulę węzłów z włączonymi funkcjami Trusted Launch i FIPS

Zaufane uruchamianie i FIPS można włączyć razem tylko dla pul węzłów z systemem Ubuntu 22.04 w rozmiarach maszyn wirtualnych 2. generacji.

W przypadku operacji specyficznych dla standardu FIPS, takich jak wyłączanie protokołu FIPS w istniejącej puli węzłów, zobacz Włączanie federalnego standardu przetwarzania informacji (FIPS) dla pul węzłów Azure Kubernetes Service (AKS).

  1. Dodaj pulę węzłów z włączonymi funkcjami Trusted Launch i FIPS za pomocą polecenia az aks nodepool add. Przed uruchomieniem polecenia przejrzyj następujące parametry:

    • --cluster-name: Wprowadź nazwę klastra AKS.
    • --resource-group: wprowadź nazwę istniejącej grupy zasobów do hostowania zasobu klastra usługi AKS.
    • --name: wprowadź unikatową nazwę puli węzłów. Nazwa puli węzłów może zawierać tylko małe litery alfanumeryczne i musi zaczynać się od małej litery. W przypadku pul węzłów systemu Linux długość musi wynosić od 1 do 11 znaków.
    • --node-count: liczba węzłów w puli agentów Kubernetes. Wartość domyślna to 3.
    • --enable-secure-boot: Umożliwia funkcji Secure Boot uwierzytelnianie obrazu podpisanego przez zaufanego wydawcę.
    • --enable-vtpm: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.
    • --enable-fips-image: włącza obraz węzła zgodny ze standardem FIPS dla puli węzłów.

    Uwaga

    Secure Boot wymaga podpisanych programów rozruchowych, jąder systemu operacyjnego i sterowników. Jeśli po włączeniu bezpiecznego rozruchu węzły nie są uruchamiane, możesz sprawdzić, które składniki rozruchu są odpowiedzialne za błędy bezpiecznego rozruchu na maszynie wirtualnej z systemem Linux platformy Azure. Zobacz weryfikowanie błędów bezpiecznego rozruchu.

    W poniższym przykładzie wdrożono pulę węzłów z włączoną funkcją vTPM, bezpiecznym rozruchem i standardem FIPS w klastrze o nazwie myAKSCluster z trzema węzłami:

    az aks nodepool add --resource-group myResourceGroup --cluster-name myAKSCluster --name mynodepool --node-count 3 --enable-vtpm --enable-secure-boot --enable-fips-image
    
  2. Sprawdź, czy pula węzłów używa obrazu Trusted Launch.

    Zaufane węzły uruchamiania mają następujące dane wyjściowe:

    • Wersja obrazu Node zawierająca zarówno "TL", jak i "FIPS".
    • Parametr "Security-type" ma wartość "Trusted Launch".
    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    
  1. Utwórz szablon z parametrami Trusted Launch i FIPS. Przed utworzeniem szablonu przejrzyj następujące parametry:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.
    • enableFips: włącza obraz węzła zgodny ze standardem FIPS dla puli węzłów.

    W szablonie podaj wartości dla enableVTPM, enableSecureBoot i enableFips. Ten sam schemat używany do wdrażania CLI istnieje w definicji w obszarze Microsoft.ContainerService/managedClusters/agentPools, jak pokazano w poniższym przykładzie:

    "properties": {
        ...,
        "osSKU": "Ubuntu",
        "enableFips": true,
        "securityProfile": {
            "enableVTPM": true,
            "enableSecureBoot": true,
        }
    }
    
  2. Wdróż szablon przy użyciu protokołu vTPM, bezpiecznego rozruchu i protokołu FIPS włączonego w klastrze. Zapoznaj się z Wdrożenie klastra AKS przy użyciu szablonu ARM aby uzyskać szczegółowe instrukcje.

  1. Utwórz plik Bicep z parametrami Trusted Launch i FIPS. Przed utworzeniem pliku przejrzyj następujące parametry:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.
    • enableFips: włącza obraz węzła zgodny ze standardem FIPS dla puli węzłów.

    W pliku Bicep podaj wartości dla enableVTPM, enableSecureBooti enableFips. Ten sam schemat używany do wdrażania CLI istnieje w definicji w obszarze Microsoft.ContainerService/managedClusters/agentPools, jak pokazano w poniższym przykładzie:

    properties: {
      // ...
      osSKU: 'Ubuntu'
      enableFips: true
      securityProfile: {
        enableVTPM: true
        enableSecureBoot: true
      }
    }
    
  2. Wdróż plik Bicep przy użyciu protokołu vTPM, bezpiecznego rozruchu i protokołu FIPS włączonego w klastrze. Aby uzyskać szczegółowe instrukcje, zobacz Deploy an AKS cluster using a Bicep file (Wdrażanie klastra usługi AKS przy użyciu pliku Bicep).

Dostawca AzureRM dla Terraform (azurerm) nie obsługuje funkcji Trusted Launch, ponieważ nie udostępnia ustawień puli węzłów Trusted Launch. Aby dodać pulę węzłów z włączonymi funkcjami Trusted Launch i obsługą standardu FIPS, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure, szablonu ARM lub narzędzia Bicep zawartych w tym artykule.

Portal Azure nie obsługuje dodawania puli węzłów z włączonym zaufanym uruchamianiem i standardem FIPS. Aby dodać pulę węzłów z włączonym zaufanym uruchamianiem oraz funkcją FIPS, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure, szablonu ARM lub języka Bicep opisanych w tym artykule.

Włączanie protokołu vTPM lub bezpiecznego rozruchu w istniejącej puli węzłów systemu Linux

W istniejącej standardowej puli węzłów systemu Linux, która korzysta z obrazu Ubuntu lub Azure Linux obsługującego funkcję Trusted Launch, można włączyć funkcję vTPM, Secure Boot lub obie te funkcje. Pula węzłów nie musi jeszcze używać obrazu Trusted Launch, ale musi spełniać obowiązujące wymagania i ograniczenia funkcji Trusted Launch.

AKS ponownie tworzy pulę węzłów przy użyciu obrazu Trusted Launch, co powoduje ponowne utworzenie węzłów i zakłócenia w działaniu obciążeń. Przeprowadź aktualizację w oknie konserwacyjnym i upewnij się, że obciążenia robocze tolerują ponowne obrazowanie węzłów.

  1. Zaktualizuj pulę węzłów, aby włączyć vTPM lub bezpieczny rozruch za pomocą polecenia az aks nodepool update. Przed uruchomieniem polecenia przejrzyj następujące parametry:

    • --resource-group: Wprowadź nazwę istniejącej grupy zasobów hostującej istniejący klaster AKS.
    • --cluster-name: wprowadź unikatową nazwę klastra usługi AKS, taką jak myAKSCluster.
    • --name: wprowadź nazwę puli węzłów, taką jak mynodepool.
    • --enable-secure-boot: umożliwia bezpieczny rozruch w celu uwierzytelnienia, że obraz został podpisany przez zaufanego wydawcę.
    • --enable-vtpm: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    Uwaga

    Secure Boot wymaga podpisanych programów rozruchowych, jąder systemu operacyjnego i sterowników. Jeśli po włączeniu bezpiecznego rozruchu węzły nie są uruchamiane, możesz sprawdzić, które składniki rozruchu są odpowiedzialne za błędy bezpiecznego rozruchu w ramach maszyny wirtualnej z systemem Azure Linux. Zobacz weryfikowanie błędów bezpiecznego rozruchu.

    Poniższy przykład aktualizuje pulę węzłów mynodepool w klastrze myAKSCluster w grupie myResourceGroup i włącza funkcję vTPM:

    az aks nodepool update --cluster-name myAKSCluster --resource-group myResourceGroup --name mynodepool --enable-vtpm
    

    Poniższy przykład aktualizuje pulę węzłów mynodepool na myAKSCluster w grupie myResourceGroup i włącza bezpieczny rozruch:

    az aks nodepool update --cluster-name myAKSCluster --resource-group myResourceGroup --name mynodepool --enable-secure-boot
    

    Poniższy przykład aktualizuje pulę węzłów mynodepool w klastrze myAKSCluster w grupie zasobów myResourceGroup i włącza zarówno moduł vTPM, jak i bezpieczny rozruch:

    az aks nodepool update \
        --cluster-name myAKSCluster \
        --resource-group myResourceGroup \
        --name mynodepool \
        --enable-vtpm \
        --enable-secure-boot
    
  2. Po zakończeniu aktualizacji sprawdź, czy pula węzłów używa obrazu systemu Trusted Launch.

    Zaufane węzły uruchamiania mają następujące dane wyjściowe:

    • Wersja obrazu węzła zawierająca element "TL", taki jak "AKSUbuntu-2204-gen2TLcontainerd".
    • Parametr "Security-type" ma wartość "Trusted Launch".
    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    
  1. Zaktualizuj szablon ARM o parametry Trusted Launch. Przed zaktualizowaniem szablonu zapoznaj się z następującymi parametrami:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W szablonie ustaw enableVTPM, enableSecureBoot lub oba w puli węzłów securityProfile. Poniższy przykład umożliwia zarówno protokół vTPM, jak i bezpieczny rozruch:

    "properties": {
        ...,
        "securityProfile": {
            "enableVTPM": true,
            "enableSecureBoot": true,
        }
    }
    
  2. Wdróż zaktualizowany szablon z włączonym modułem vTPM i bezpiecznym rozruchem na swojej puli węzłów. Szczegółowe instrukcje znajdują się w artykule Wdrażanie klastra AKS przy użyciu szablonu ARM.

  3. Po zakończeniu wdrożenia sprawdź, czy pula węzłów używa obrazu Trusted Launch.

    Zaufane węzły uruchamiania mają następujące dane wyjściowe:

    • Wersja obrazu węzła zawierająca element "TL", taki jak "AKSUbuntu-2204-gen2TLcontainerd".
    • Parametr "Security-type" ma wartość "Trusted Launch".
    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    
  1. Zaktualizuj plik Bicep o parametry funkcji Trusted Launch. Przed zaktualizowaniem pliku zapoznaj się z następującymi parametrami:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W pliku Bicep ustaw enableVTPM, enableSecureBoot lub oba w puli węzłów securityProfile. Poniższy przykład umożliwia zarówno protokół vTPM, jak i bezpieczny rozruch:

    properties: {
      // ...
      securityProfile: {
        enableVTPM: true
        enableSecureBoot: true
      }
    }
    
  2. Wdróż zaktualizowany plik Bicep z włączonymi funkcjami vTPM i bezpiecznego rozruchu w puli węzłów. Aby uzyskać szczegółowe instrukcje, zobacz temat Wdrażanie klastra AKS przy użyciu pliku Bicep.

  3. Po zakończeniu wdrożenia sprawdź, czy pula węzłów używa obrazu Trusted Launch.

    Zaufane węzły uruchamiania mają następujące dane wyjściowe:

    • Wersja obrazu węzła zawierająca element "TL", taki jak "AKSUbuntu-2204-gen2TLcontainerd".
    • Parametr "Security-type" ma wartość "Trusted Launch".
    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    

Dostawca AzureRM dla Terraform (azurerm) nie obsługuje funkcji Trusted Launch, ponieważ nie udostępnia ustawień puli węzłów Trusted Launch. Aby włączyć vTPM lub bezpieczny rozruch w istniejącej puli węzłów, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure (Azure CLI), szablonów ARM lub narzędzia Bicep opisanych w tym artykule.

Portal Azure nie obsługuje włączania protokołu vTPM ani bezpiecznego rozruchu w istniejącej puli węzłów. Aby włączyć vTPM lub bezpieczny rozruch w istniejącej puli węzłów, użyj instrukcji dotyczących interfejsu wiersza polecenia platformy Azure (Azure CLI), szablonów ARM lub narzędzia Bicep zawartych w tym artykule.

Przypisywanie podów do węzłów z włączonym zaufanym uruchamianiem

Można ograniczyć działanie zasobnika do uruchamiania na określonym węźle lub węzłach, bądź preferować węzły z włączonym Trusted Launch. Możesz to kontrolować przy użyciu następującego selektora puli węzłów w manifeście zasobnika.

spec:
  nodeSelector:
        kubernetes.azure.com/security-type = "TrustedLaunch"

Wyłączanie funkcji vTPM lub Secure Boot w istniejącej puli węzłów systemu Linux

Możesz wyłączyć funkcję vTPM, funkcję Secure Boot lub obie w istniejącej puli węzłów systemu Linux. Jeśli którakolwiek z tych funkcji pozostanie włączona, pula węzłów będzie nadal używać ścieżki obrazu systemu Trusted Launch. Jeśli wyłączysz obie funkcje w zwykłej puli węzłów z systemem Ubuntu lub Azure Linux, usługa AKS przeprowadzi ponowne obrazowanie puli węzłów do odpowiedniego obrazu bez funkcji Trusted Launch i zmieni bazowy typ zabezpieczeń zestawu skalowania maszyn wirtualnych z powrotem na Standard.

  1. Zaktualizuj pulę węzłów, aby wyłączyć funkcję Bezpiecznego rozruchu lub vTPM za pomocą polecenia az aks nodepool update. Przed uruchomieniem polecenia przejrzyj następujące parametry:

    • --resource-group: Wprowadź nazwę istniejącej grupy zasobów hostującej istniejący klaster AKS.
    • --cluster-name: wprowadź unikatową nazwę klastra usługi AKS, taką jak myAKSCluster.
    • --name: wprowadź nazwę puli węzłów, taką jak mynodepool.
    • --disable-secure-boot: wyłącza bezpieczny rozruch.
    • --disable-vtpm: wyłącza vTPM.

    Poniższy przykład aktualizuje pulę węzłów mynodepool w klastrze myAKSCluster w grupie myResourceGroup i wyłącza funkcję vTPM:

    az aks nodepool update --cluster-name myAKSCluster --resource-group myResourceGroup --name mynodepool --disable-vtpm
    

    Poniższy przykład aktualizuje pulę węzłów mynodepool w klastrze myAKSCluster w grupie zasobów myResourceGroup i wyłącza bezpieczny rozruch:

    az aks nodepool update --cluster-name myAKSCluster --resource-group myResourceGroup --name mynodepool --disable-secure-boot
    

    Poniższy przykład aktualizuje pulę węzłów mynodepool w klastrze myAKSCluster w grupie zasobów myResourceGroup i wyłącza zarówno moduł vTPM, jak i funkcję bezpiecznego rozruchu:

    az aks nodepool update \
        --cluster-name myAKSCluster \
        --resource-group myResourceGroup \
        --name mynodepool \
        --disable-vtpm \
        --disable-secure-boot
    
  2. Po zakończeniu aktualizacji sprawdź, czy pula węzłów używa oczekiwanego obrazu.

    Jeśli vTPM lub Bezpieczny rozruch pozostają włączone, węzły Trusted Launch zwracają następujące dane wyjściowe:

    • Wersja obrazu węzła zawierająca element "TL", taki jak "AKSUbuntu-2204-gen2TLcontainerd".
    • Parametr "Security-type" ma wartość "Trusted Launch".

    Jeśli wyłączysz zarówno vTPM, jak i funkcję Bezpiecznego rozruchu, wersja obrazu węzła nie powinna zawierać elementu "TL", a element "Security-type" nie powinien mieć wartości "Trusted Launch".

    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    
  1. Zaktualizuj szablon ARM o parametry funkcji Trusted Launch. Przed zaktualizowaniem szablonu zapoznaj się z następującymi parametrami:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W szablonie ustaw enableVTPM, enableSecureBoot lub oba te elementy w puli węzłów securityProfile. Poniższy przykład wyłącza zarówno protokół vTPM, jak i bezpieczny rozruch:

    "properties": {
        ...,
        "securityProfile": {
            "enableVTPM": false,
            "enableSecureBoot": false,
        }
    }
    
  2. Wdróż zaktualizowany szablon z wyłączonymi modułem vTPM i funkcją Bezpieczny rozruch w swojej puli węzłów. Aby uzyskać szczegółowe instrukcje, zobacz Wdrażanie klastra AKS przy użyciu szablonu ARM.

  3. Po zakończeniu wdrażania sprawdź, czy pula węzłów używa oczekiwanego obrazu.

    Jeśli funkcja vTPM lub bezpieczny rozruch pozostają włączone, węzły Trusted Launch zwracają następujące dane wyjściowe:

    • Wersja obrazu węzła zawierająca element "TL", taki jak "AKSUbuntu-2204-gen2TLcontainerd".
    • Parametr "Security-type" ma wartość "Trusted Launch".

    Jeśli wyłączysz zarówno vTPM, jak i Secure Boot, wersja obrazu węzła nie powinna zawierać "TL", a "Security-type" nie powinno być "Trusted Launch".

    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    
  1. Zaktualizuj plik Bicep przy użyciu parametrów zaufanego uruchamiania. Przed zaktualizowaniem pliku zapoznaj się z następującymi parametrami:

    • enableSecureBoot: umożliwia bezpieczny rozruch w celu uwierzytelnienia obrazu podpisanego przez zaufanego wydawcę.
    • enableVTPM: Włącza moduł vTPM i przeprowadza poświadczenie poprzez pomiar całego łańcucha rozruchu maszyny wirtualnej.

    W pliku Bicep ustaw enableVTPM, enableSecureBoot lub oba w puli węzłów securityProfile. Poniższy przykład wyłącza zarówno protokół vTPM, jak i bezpieczny rozruch:

    properties: {
      // ...
      securityProfile: {
        enableVTPM: false
        enableSecureBoot: false
      }
    }
    
  2. Wdróż zaktualizowany plik Bicep z wyłączonymi funkcjami vTPM i bezpiecznego rozruchu w puli węzłów. Aby uzyskać szczegółowe instrukcje, zobacz temat Wdrażanie klastra AKS przy użyciu pliku Bicep.

  3. Po zakończeniu wdrażania sprawdź, czy pula węzłów używa oczekiwanego obrazu.

    Jeśli funkcja vTPM lub bezpieczny rozruch pozostają włączone, węzły Trusted Launch zwracają następujące dane wyjściowe:

    • Wersja obrazu węzła zawierająca element "TL", taki jak "AKSUbuntu-2204-gen2TLcontainerd".
    • Parametr "Security-type" ma wartość "Trusted Launch".

    Jeśli wyłączysz zarówno vTPM, jak i Secure Boot, wersja obrazu węzła nie powinna zawierać "TL", a "Security-type" nie powinno być "Trusted Launch".

    kubectl get nodes
    kubectl describe node {node-name} | grep -e node-image-version -e security-type
    

Dostawca AzureRM dla Terraform (azurerm) nie obsługuje funkcji Trusted Launch, ponieważ nie udostępnia ustawień puli węzłów Trusted Launch. Aby wyłączyć vTPM lub funkcję bezpiecznego rozruchu w istniejącej puli węzłów, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure (Azure CLI), szablonów ARM lub rozwiązania Bicep zawartych w tym artykule.

Portal Azure nie obsługuje wyłączania programu vTPM ani bezpiecznego rozruchu w istniejącej puli węzłów. Aby wyłączyć moduł vTPM lub funkcję Bezpieczny rozruch w istniejącej puli węzłów, skorzystaj z instrukcji dotyczących interfejsu wiersza polecenia platformy Azure (Azure CLI), szablonów ARM lub narzędzia Bicep zawartych w tym artykule.

Następne kroki

W tym artykule dowiedziałeś się, jak włączyć zaufane uruchamianie. Dowiedz się więcej o Trusted Launch.