Paano Ma-Decode ang Lihim sa Kubernetes

Paano Ma Decode Ang Lihim Sa Kubernetes



Ang Kubernetes ay isang open-source na container deployment system na nagpapatakbo ng mga containerized na application sa loob ng Kubernetes cluster. Sa pag-deploy ng application, ang mga lihim ay isa sa mga mahahalagang mapagkukunan ng Kubernetes. Ginagamit ito upang mag-imbak ng kritikal o kumpidensyal na impormasyon tulad ng mga username at password, API key, certificate, o token. Inililigtas nito ang gumagamit mula sa pagbibigay ng kritikal na impormasyon sa code. Ang lihim ng Kubernetes ay hindi nag-iimbak ng data nang direkta, una nitong binabago ang data sa ibang anyo at pagkatapos ay iniimbak ito sa mapagkukunan ng Kubernetes.

Ang artikulong ito ay maglalarawan:

Paano Gumawa ng Lihim ng Kubernetes?

Mayroong iba't ibang uri ng mga lihim sa Kubernetes ang generic na sikreto ay ginagamit upang mag-imbak ng generic na impormasyon tulad ng mga kredensyal ng user at mga token, ang TLS secret ay ginagamit upang mag-imbak ng tls certificate at key, at ang docker registry secret ay nag-iimbak ng Docker login credentials.







Para sa pagpapakita, gagawa kami ng generic na sikreto upang mag-imbak ng username at password sa mga tagubilin sa ibaba.



Hakbang 1: Simulan ang Cluster

Una, simulan ang Kubernetes cluster. Upang gawin ito, gamitin lamang ang ' simula ng minikube ” utos:



simula ng minikube -p multinode

Sa utos sa itaas, sinisimulan namin ang aming multinode minikube cluster:





Hakbang 2: Gumawa ng Credential File

Susunod, lumikha ng dalawang text file na pinangalanang 'username.txt' at 'password.txt' upang i-save ang username at password ayon sa pagkakabanggit.



Hakbang 3: Gumawa ng Lihim

Susunod, mag-navigate sa direktoryo kung saan ka gumawa ng mga kredensyal na file:

cd C:\Users\Dell\Documents\Kubernetes\Secret

Gumawa ng bagong sikreto gamit ang “ kubectl lumikha ng lihim na ” utos. Dito, ang ' –mula sa file 'Ang opsyon ay ginagamit upang i-save ang lihim na data mula sa file:

kubectl lumikha ng lihim na generic na demo-secret --mula sa file = username =username.txt --mula sa file = password =password.txt

Hakbang 4: Kumuha ng Lihim

Para sa pag-verify, ilista ang lihim gamit ang command sa ibaba

kubectl makakuha ng lihim

Ang output ay nagpapahiwatig na ang isang bagong lihim ay matagumpay na nalikha:

Paano Kumuha ng Decoded Secret sa Kubernetes?

Minsan maaaring kailanganin ng mga user na tingnan ang lihim na impormasyon para sa iba't ibang dahilan tulad ng para sa mga layunin ng pag-debug, pagtingin sa impormasyon ng kredensyal para sa kumpirmasyon, at marami pa. Upang makuha ang na-decode na lihim sa Kubernetes, sundin ang demonstrasyon sa ibaba.

Hakbang 1: Ilarawan ang Lihim

Ang ' paglalarawan ng kubectl ” ay nagpapakita ng detalyadong buod ng mapagkukunan ng kubernetes. Upang tingnan ang mga lihim na detalye, gamitin ang ' inilalarawan ng kubectl ang sikretong ” utos:

inilalarawan ng kubectl ang lihim na demo-secret

Dito, ang utos sa itaas ay nagpapakita ng lihim na laki ng data lamang sa mga byte ngunit hindi inilalantad ang lihim na impormasyon tulad ng ipinapakita sa ibaba:

Hakbang 2: Kumuha ng Lihim na Data sa Json Format

Upang makuha ang lihim na data sa json format, gamitin ang command sa ibaba:

kubectl makakuha ng lihim na demo-secret -O jsonpath = '{.data}'

Ang resulta sa ibaba ay nagpapakita ng lihim na data na naka-encode sa base64:

Upang tingnan ang lihim, kailangang i-decode ng user ang lihim. Upang ma-decode ang lihim mula base64 hanggang sa tunay na anyo, ang user ay kailangang magkaroon ng bash terminal upang patakbuhin ang bash command. Upang i-install ang bash terminal, sundin ang ' Magdagdag ng Git Bash sa Windows Terminal ” artikulo.

Hakbang 3: I-decode ang Lihim

Upang i-decode ang sikreto, ilunsad muna ang 'git bash' terminal. Pagkatapos nito, patakbuhin ang ' echo | base64 –decode ” utos. Maaaring direktang isagawa ang command na ito sa mga terminal ng Linux at Mac:

echo 'TGludXhoaW50' | base64 --decode

Dito, na-decode namin ang username:

Upang i-decode ang password, gamitin ang “ echo | base64 –decode ” utos:

echo 'TGludXhoaW50QDEyMw==' | base64 --decode

Paano Kumuha ng Decoded Secret Gamit ang View-Secret Package?

Ang mga gumagamit ng Kubernetes ay maaaring mag-decode ng sikreto gamit ang iba't ibang mga pakete at ang ' tingnan-lihim 'Ang package ay isa sa mga ito na maaaring mai-install at madaling gamitin sa pamamagitan ng isa sa mga plugin na sinusuportahan ng Kubernetes ' Dugo ”. Upang i-install at gamitin ang ' tingnan-lihim ” package, sundin ang demonstrasyon sa ibaba:

Kinakailangan: I-install ang Krew Plugin

Ang Krew plugin ay isa sa mga Kubernetes plugin na maaaring magamit upang mag-install ng iba't ibang mga pakete upang magbigay ng mga karagdagang functionality sa mga mapagkukunan ng Kubernetes. Upang i-install ang krew sa system, dumaan sa mga hakbang sa ibaba.

Hakbang 1: I-download ang “krew.exe” File

Una, mag-navigate sa krew release opisyal pahina at i-download ang 'krew.exe' na file:

—————————————————————————————————————————

Bilang default, mada-download ang krew sa “ Mga download ” folder:

Hakbang 2: Ilunsad ang Command Prompt

Buksan ang Command Prompt na may mga karapatang pang-administratibo sa pamamagitan ng “ Magsimula ” menu:

Hakbang 3: I-install ang Krew

Mag-navigate sa direktoryo kung saan ang ' dugo.exe 'na-download ang file:

cd C:\Users\Dell\Downloads

Susunod, gamitin ang command sa ibaba upang i-install ang krew sa Windows:

.\dugo i-install dugo

Ang utos sa itaas ay mag-i-install ng krew sa direktoryo ng gumagamit ' C:\Users\\.crew\bin ”:

Hakbang 4: Magdagdag ng Krew sa Windows Path

Upang ma-access ang Krew command mula sa Windows command line, ang mga user ay kinakailangang magdagdag ng krew sa Windows path. Upang gawin ito, hanapin ang ' variable ng kapaligiran ” sa Start menu at ilunsad ang mga setting na naka-highlight sa ibaba:

Galing sa ' Advanced ” tab, buksan ang mga setting ng “Mga Variable ng Kapaligiran”:

Piliin ang ' Daan ” variable at pindutin ang “ I-edit 'button:

Pindutin ang ' Bago ” button para magdagdag ng path, i-paste ang “ C:\Users\\.crew\bin ” path, at pindutin ang “OK” na buton:

Hakbang 5: Pag-verify

Ngayon, isara ang lahat ng mga terminal ng Windows at ilunsad ang Command Prompt o PowerShell. Pagkatapos, patakbuhin ang utos sa ibaba upang suriin kung naka-install ang krew o hindi:

dugo ng kubectl

Ipinapakita ng output na matagumpay naming na-install ang krew sa system:

I-decode ang Kubernetes Secret Gamit ang View-Secret Package

Upang i-decode ang lihim gamit ang view-secret package, i-install muna ang lihim gamit ang krew. Pagkatapos nito, gamitin ang ' kubectl view-secret ” utos na i-decode ang sikreto. Para sa paglalarawan, tingnan ang mga hakbang sa ibaba.

Hakbang 1: I-install ang View-Secret Package

Upang i-install ang view-secret package, gamitin ang Kubectl krew plugin tulad ng ipinapakita sa ibaba:

dugo ng kubectl i-install tingnan-lihim

Makikita mong na-install namin ang view-secret package. Balewalain din ang ipinapakitang babala sa ibaba:

Hakbang 2: Tingnan ang Lihim ng Kubernetes

Susunod, para tingnan ang na-decode na lihim ng Kubernetes, gamitin ang ' kubectl view-secret ” utos:

kubectl view-secret demo-secret

Dito, ipinapakita ng output ang kasalukuyang lihim na naglalaman ng dalawang variable. Upang tingnan ang na-decode na halaga, kailangang tukuyin ng user ang variable na pangalan pati na rin sa command:

Hakbang 3: I-decode ang Lihim

Upang i-decode ang lihim na halaga, gamitin ang ' kubectl view-secret ” utos:

kubectl view-secret demo-secret username

Dito, na-decode namin ang username:

Sa pamamagitan ng pagpapalit ng variable na pangalan sa command sa itaas, na-access namin ang password tulad ng ipinapakita sa ibaba:

kubectl view-secret demo-secret password

Iyon ay tungkol sa pagkuha ng na-decode na lihim sa Kubernetes.

Konklusyon

Para makuha ang na-decode na sikreto sa Kubernetes, i-access muna ang sikretong data sa json format sa pamamagitan ng command na 'kubectl get secret'. Ang utos na ito ay magpapakita ng lihim na data na naka-encode sa base64. Upang i-decode ang data, gamitin ang ' echo | base64 –decode ” utos. Bilang kahalili, maaaring tingnan ng user ang na-decode na lihim sa pamamagitan ng paggamit ng package na “view-secret”. Ang blog na ito ay naglalarawan kung paano makakuha ng mga na-decode na lihim sa Kubernetes.