Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Niestandardowy urząd certyfikacji (CA) umożliwia dodanie maksymalnie 10 certyfikatów zakodowanych w formacie base64 do magazynu zaufania węzła. Ta funkcja jest często potrzebna, gdy urzędy certyfikacji muszą być obecne w węźle, na przykład podczas nawiązywania połączenia z rejestrem prywatnym.
W tym artykule pokazano, jak tworzyć niestandardowe centra certyfikacji i stosować je na klastrach AKS.
Wymagania wstępne
- Subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, utwórz bezpłatne konto.
- Potrzebny jest interfejs wiersza polecenia platformy Azure w wersji 2.72.0 lub nowszej, zainstalowany i skonfigurowany. Aby znaleźć swoją wersję CLI, uruchom
az --version
. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure. - Ciąg certyfikatu zakodowany w formacie base64 lub plik tekstowy z certyfikatem.
Ograniczenia
- Nie są obsługiwane grupy węzłów Windows.
- Instalowanie różnych CA w tym samym klastrze nie jest wspierane.
Instalowanie certyfikatów CA w węzłowym magazynie zaufania
Utwórz plik zawierający urzędy certyfikacji.
Utwórz plik tekstowy zawierający maksymalnie 10 pustych certyfikatów rozdzielonych wierszami. Po przekazaniu tego pliku do klastra, certyfikaty te zostają zainstalowane w magazynach zaufania węzła.
Przykładowy plik tekstowy:
-----BEGIN CERTIFICATE----- cert1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- cert2 -----END CERTIFICATE-----
Przed przejściem do następnego kroku upewnij się, że w pliku tekstowym nie ma pustych spacji. Te puste spacje spowodują błąd w następnym kroku, jeśli nie zostaną usunięte.
Użyj
az aks create
lubaz aks update
, aby przekazać certyfikaty do klastra. Po zakończeniu operacji certyfikaty są instalowane w magazynach zaufania należących do węzła.Zainstaluj urzędy certyfikacji podczas tworzenia klastra przy użyciu polecenia
az aks create
i określeniu pliku tekstowego dla parametru--custom-ca-trust-certificates
.az aks create \ --resource-group <resource-group-name> \ --name <cluster-name> \ --node-count 2 \ --custom-ca-trust-certificates FileWithCAs \ --generate-ssh-keys
Zainstaluj certyfikaty CA podczas aktualizacji klastra za pomocą polecenia
az aks update
i wskazując plik tekstowy dla parametru--custom-ca-trust-certificates
.az aks update \ --resource-group <resource-group-name> \ --name <cluster-name> \ --custom-ca-trust-certificates <path-to-ca-file>
Uwaga / Notatka
Ta operacja wyzwala aktualizację modelu, aby upewnić się, że wszystkie istniejące węzły mają zainstalowane te same certyfikaty urzędów certyfikacji w celu poprawnego zarządzania zasobami. Usługa AKS tworzy nowe węzły, opróżnia istniejące węzły, usuwa je i zastępuje węzłami z nowym zestawem certyfikatów autoryzacji.
Sprawdź, czy certyfikaty zostały zainstalowane.
Użyj polecenia az aks show
aby sprawdzić, czy certyfikaty są zainstalowane.
az aks show -g <resource-group-name> -n <cluster-name> | grep securityProfile -A 4
Dane wyjściowe securityProfile powinny zawierać Twoje niestandardowe certyfikaty zaufania urzędu certyfikacji.
"securityProfile": {
"azureKeyVaultKms": null,
"customCaTrustCertificates": [
"values"
Rozwiązywanie problemów
Błąd formatowania
Dodanie certyfikatów do klastra może spowodować błąd, jeśli plik z certyfikatami nie jest poprawnie sformatowany.
failed to decode one of SecurityProfile.CustomCATrustCertificates to PEM after base64 decoding
Jeśli wystąpi ten błąd, sprawdź, czy plik wejściowy nie zawiera dodatkowych nowych wierszy, białych spacji ani danych innych niż poprawnie sformatowane certyfikaty, jak pokazano w przykładowym pliku.
Funkcja jest włączona, a tajny klucz związany z urzędami certyfikacji jest dodany, ale operacje kończą się niepowodzeniem z powodu błędu certyfikatu X.509 podpisanego przez nieznanego urzędu.
Nieprawidłowo sformatowane certyfikaty przekazane w kluczu tajnym
Usługa AKS wymaga, aby certyfikaty przekazywane w wpisie tajnym utworzonym przez użytkownika były prawidłowo sformatowane i zakodowane w formacie base64. Upewnij się, że urzędy certyfikacji, które przekazałeś, są prawidłowo zakodowane w formacie base64 i że pliki z urzędami certyfikacji nie mają znaków końca linii CRLF.
Certyfikaty przekazane do --custom-ca-trust-certificates
nie powinny być zakodowane w formacie base64.
Kontenerd nie pobiera nowych certyfikatów
W powłoce węzła uruchom polecenie systemctl restart containerd
. Po ponownym uruchomieniu kontenera środowisko uruchomieniowe kontenera pobiera nowe certyfikaty.
Dalsze kroki
Aby uzyskać więcej informacji na temat najlepszych rozwiązań w zakresie zabezpieczeń usługi AKS, zobacz Najlepsze rozwiązania dotyczące zabezpieczeń i uaktualnień klastra w usłudze Azure Kubernetes Service (AKS).
Azure Kubernetes Service