Jak uzyskać sekretny dekodowany w Kubernetes

Jak Uzyskac Sekretny Dekodowany W Kubernetes



Kubernetes to system wdrażania kontenerów typu open source, który uruchamia skonteneryzowane aplikacje w klastrze Kubernetes. Podczas wdrażania aplikacji tajemnice są jednym z podstawowych zasobów Kubernetesa. Służy do przechowywania krytycznych lub poufnych informacji, takich jak nazwy użytkowników i hasła, klucze API, certyfikaty lub tokeny. Oszczędza użytkownikowi konieczności podawania krytycznych informacji w kodzie. Sekret Kubernetesa nie przechowuje danych bezpośrednio, najpierw przekształca dane do innej formy, a następnie przechowuje je w zasobie Kubernetes.

Ten artykuł zilustruje:

Jak utworzyć sekret Kubernetes?

W Kubernetes istnieją różne typy sekretów. Sekret ogólny służy do przechowywania ogólnych informacji, takich jak dane uwierzytelniające użytkownika i tokeny, sekret TLS służy do przechowywania certyfikatu i klucza TLS, a sekret rejestru dokera przechowuje dane logowania do Dockera.







W celach demonstracyjnych w poniższych instrukcjach utworzymy ogólny sekret do przechowywania nazwy użytkownika i hasła.



Krok 1: Uruchom klaster

Najpierw uruchom klaster Kubernetes. Aby to zrobić, po prostu użyj przycisku „ początek minikube'a ' Komenda:



początek minikube'a -P wielowęzłowy

W powyższym poleceniu uruchamiamy nasz wielowęzłowy klaster minikube:





Krok 2: Utwórz plik danych uwierzytelniających

Następnie utwórz dwa pliki tekstowe o nazwach „nazwa użytkownika.txt” i „hasło.txt”, aby zapisać odpowiednio nazwę użytkownika i hasło.



Krok 3: Utwórz sekret

Następnie przejdź do katalogu, w którym utworzyłeś pliki danych uwierzytelniających:

płyta CD C:\Users\Dell\Documents\Kubernetes\Secret

Utwórz nowy sekret za pomocą „ kubectl utwórz sekret ' Komenda. Tutaj ' -z pliku ” opcja służy do zapisania tajnych danych z pliku:

kubectl utwórz sekret ogólny sekret-demo --z pliku = nazwa użytkownika =nazwaużytkownika.txt --z pliku = hasło =hasło.txt

Krok 4: Zdobądź sekret

W celu weryfikacji zapisz sekret za pomocą poniższego polecenia

kubectl uzyskaj sekret

Dane wyjściowe wskazują, że nowy sekret został pomyślnie utworzony:

Jak zdobyć odszyfrowany sekret w Kubernetesie?

Czasami od użytkowników może być wymagane wyświetlenie tajnych informacji z różnych powodów, na przykład w celu debugowania, przeglądania informacji uwierzytelniających w celu potwierdzenia i wielu innych. Aby uzyskać odszyfrowany sekret w Kubernetesie, postępuj zgodnie z poniższą demonstracją.

Krok 1: Opisz Sekret

kubectl opisz ” wyświetla szczegółowe podsumowanie zasobu kubernetes. Aby wyświetlić tajne szczegóły, użyj „ kubectl opisz sekret ' Komenda:

kubectl opisuje sekretny sekret demo

W tym przypadku powyższe polecenie pokazuje rozmiar tajnych danych tylko w bajtach, ale nie ujawnia tajnych informacji, jak pokazano poniżej:

Krok 2: Uzyskaj tajne dane w formacie Json

Aby uzyskać tajne dane w formacie json, użyj poniższego polecenia:

kubectl pobierz tajny demo-secret -O jsonpath = '{.dane}'

Poniższy wynik pokazuje tajne dane zakodowane w base64:

Aby zobaczyć sekret, użytkownik musi go odszyfrować. Aby zdekodować sekret z base64 do postaci rzeczywistej, użytkownik musi mieć terminal bash, aby uruchomić polecenie bash. Aby zainstalować terminal bash, postępuj zgodnie z instrukcją „ Dodaj Git Bash do terminala Windows artykuł.

Krok 3: Odszyfruj tajemnicę

Aby odszyfrować sekret, najpierw uruchom terminal „git bash”. Następnie uruchom „ echo | base64 – dekodowanie ' Komenda. To polecenie można wykonać bezpośrednio na terminalach Linux i Mac:

Echo „TGludXhoaW50” | baza64 --rozszyfrować

Tutaj rozszyfrowaliśmy nazwę użytkownika:

Aby odszyfrować hasło, użyj przycisku „ echo | base64 – dekodowanie ' Komenda:

Echo 'TGludXhoaW50QDEyMw==' | baza64 --rozszyfrować

Jak uzyskać odszyfrowany sekret za pomocą pakietu View-Secret?

Użytkownicy Kubernetesa mogą odszyfrować sekret przy użyciu różnych pakietów i „ widok-sekret ” pakiet jest jednym z nich, który można zainstalować i łatwo używać za pomocą jednej z wtyczek obsługiwanych przez Kubernetes „ Krew ”. Aby zainstalować i używać „ widok-sekret ”, postępuj zgodnie z poniższą demonstracją:

Warunek wstępny: zainstaluj wtyczkę Krew

Wtyczka Krew to jedna z wtyczek Kubernetes, której można używać do instalowania różnych pakietów w celu zapewnienia dodatkowych funkcjonalności zasobom Kubernetes. Aby zainstalować krew w systemie, wykonaj poniższe kroki.

Krok 1: Pobierz plik „krew.exe”.

Najpierw przejdź do urzędnika wydającego krew strona i pobierz plik „krew.exe”:

————————————————————————————————————————-

Domyślnie krew zostanie pobrana w folderze „ Pliki do pobrania ' teczka:

Krok 2: Uruchom wiersz poleceń

Otwórz Wiersz Poleceń z uprawnieniami administracyjnymi za pomocą przycisku „ Uruchomienie ' menu:

Step 3: Install Krew

Przejdź do katalogu, w którym znajduje się „ krew.exe ” pobierany jest plik:

płyta CD C:\Users\Dell\Downloads

Następnie użyj poniższego polecenia, aby zainstalować krew w systemie Windows:

.\krew zainstalować krew

Powyższe polecenie zainstaluje krew w katalogu użytkownika „ C:\Users\\.crew\bin ”:

Krok 4: Dodaj Krew do ścieżki systemu Windows

Aby uzyskać dostęp do poleceń Krew z wiersza poleceń systemu Windows, użytkownicy muszą dodać krew w ścieżce systemu Windows. Aby to zrobić, wyszukaj „ Zmienna środowiskowa ” w menu Start i uruchom podświetlone poniżej ustawienia:

z „ Zaawansowany ”, otwórz ustawienia „Zmienne środowiskowe”:

Wybierz ' Ścieżka ” i naciśnij przycisk „ Edytować ' przycisk:

Wciśnij ' Nowy ”, aby dodać ścieżkę, wklej przycisk „ C:\Users\\.crew\bin ” i naciśnij przycisk „OK”:

Krok 5: Weryfikacja

Teraz zamknij wszystkie terminale Windows i uruchom wiersz poleceń lub PowerShell. Następnie uruchom poniższe polecenie, aby sprawdzić, czy krew jest zainstalowana, czy nie:

kubectl krew

Dane wyjściowe pokazują, że pomyślnie zainstalowaliśmy krew w systemie:

Odszyfruj sekret Kubernetes za pomocą pakietu View-Secret

Aby odszyfrować sekret za pomocą pakietu view-secret, najpierw zainstaluj sekret za pomocą krew. Następnie użyj przycisku „ kubectl view-secret ” polecenie rozszyfrowania sekretu. Dla ilustracji spójrz na poniższe kroki.

Krok 1: Zainstaluj pakiet View-Secret

Aby zainstalować pakiet view-secret, użyj wtyczki Kubectl krew, jak pokazano poniżej:

kubectl krew zainstalować widok-sekret

Możesz zobaczyć, że zainstalowaliśmy pakiet view-secret. Zignoruj ​​także poniższe ostrzeżenie:

Krok 2: Wyświetl sekret Kubernetes

Następnie, aby wyświetlić odszyfrowany sekret Kubernetesa, użyj „ kubectl view-secret ' Komenda:

kubectl widok-tajny demo-sekret

Tutaj dane wyjściowe pokazują, że bieżący sekret zawiera dwie zmienne. Aby wyświetlić zdekodowaną wartość, należy w poleceniu podać także nazwę zmiennej:

Krok 3: Odszyfruj tajemnicę

Aby odszyfrować tajną wartość, użyj „ kubectl view-secret ' Komenda:

kubectl view-secret demo-secret nazwa użytkownika

Tutaj rozszyfrowaliśmy nazwę użytkownika:

Zmieniając nazwę zmiennej w powyższym poleceniu, uzyskaliśmy dostęp do hasła, jak pokazano poniżej:

kubectl zobacz tajne hasło demo

Chodzi o to, aby uzyskać odszyfrowany sekret w Kubernetesie.

Wniosek

Aby uzyskać odszyfrowany sekret w Kubernetesie, najpierw uzyskaj dostęp do tajnych danych w formacie json za pomocą polecenia „kubectl get secret”. To polecenie pokaże tajne dane zakodowane w base64. Aby odszyfrować dane, użyj przycisku „ echo | base64 – dekodowanie ' Komenda. Alternatywnie użytkownik może wyświetlić odszyfrowany sekret za pomocą pakietu „view-secret”. W tym blogu pokazano, jak uzyskać odszyfrowane sekrety w Kubernetesie.