Kuinka luoda salainen TLS Kubernetesissa

Kuinka Luoda Salainen Tls Kubernetesissa



Kubernetes on avoimen lähdekoodin työkalu, jota käytetään konttisovelluksen suorittamiseen ja hallintaan klusterin sisällä. Se suorittaa erilaisia ​​tehtäviä hallita, suorittaa ja suojata sovelluksen tunnistetietoja salaisuuden ja sisäänpääsyn kautta.

Ingressiä käytetään sovelluksen saapuvan liikenteen hallintaan ja myös SSL-päättymiseen. Sitä vastoin salaisuuksia käytetään luottamuksellisten tietojen ja TLS-sertifikaattien tallentamiseen sovellusta varten.

Tämä postaus havainnollistaa:







Mitä ovat Kubernetes-salaisuudet?

Secrets on yksi Kubernetes-resursseista, joita käytetään luottamuksellisten tietojen, kuten käyttäjien kirjautumistietojen, avainten, varmenteiden tai tunnuksien, tallentamiseen. Salaisuudet voidaan luoda yksittäin ja liittää koteloihin. Se estää kehittäjää antamasta luottamuksellisia tietoja koodissa ja tarjoaa myös ylimääräisen suojauskerroksen. Erilaisia ​​salaisuuksia voidaan luoda ja käyttää. Yleisimmin käytetyt salaisuudet ovat:



Yleinen salaisuus: Yleisiä salaisuuksia käytetään perustietojen, kuten salasanojen, tunnuksien, API-avainten, OAuth-avaimien ja niin edelleen tallentamiseen.



TLS-salaisuus: TLS-salaisuuksia käytetään CA:n allekirjoittamien yksityisten avainten ja varmenteiden tallentamiseen. Kubernetesissa käynnissä olevien sovellusten turvallisuuden ja klusterin sisäisen viestinnän turvaamiseksi käyttäjän on yleensä luotava ja upotettava TLS-salaisuuksia podiin.





Dockerin rekisteri: Sitä käytetään docker-rekisterin valtuustietojen tallentamiseen, jotta kuvat voidaan helposti vetää rekisteristä.

Edellytys: Luo yksityinen avain ja varmenne

Luodaksesi varmenteen ja yksityisen avaimen turvallisuuden parantamiseksi, käytä OpenSSL:ää, joka luo CSR:n (sertifikaatin allekirjoituspyynnön) ja yksityisen avaimen. Luo sitten itse allekirjoitetut tai CA-varmenteet CSR:n avulla.



Käyttääkseen OpenSSL-komentoja Windowsissa käyttäjien on asennettava Git. Seuraa tätä tarkoitusta varten linkkiämme ' Asenna git Windowsiin ”artikkeli.

Kun olet asentanut git, seuraa alla olevia ohjeita luodaksesi yksityinen avain ja allekirjoitettu varmenne.

Vaihe 1: Käynnistä Git Bash Terminal

Tee haku ' Git Bash ” Käynnistä-valikossa ja käynnistä pääte:

Tarkista nykyinen hakemisto käyttämällä ' pwd 'komento:

pwd

Tällä hetkellä työskentelemme %USERPROFILE% -hakemistossa:

Vaihe 2: Luo uusi hakemisto

Luo uusi hakemisto sertifikaattien ja yksityisen avaimen tallentamista varten:

mkdir varm

Siirry äskettäin luotuun hakemistoon käyttämällä ' CD 'komento:

CD varm

Vaihe 3: Luo yksityinen avain

Luo nyt yksityinen avain annetun komennon avulla. Täällä luotu yksityinen avain tallennetaan kansioon ' mycert.key ':

openssl genpkey -algoritmi RSA -ulos mycert.key

Vaihe 4: Luo CSR

Luodaksesi CSR (varmennepalvelupyyntö) allekirjoitetun varmenteen saamiseksi, käytä annettua komentoa:

openssl req -Uusi -avain mycert.key -ulos mycert.csr

Vaihe 5: Luo varmenne

Luo lopuksi varmenne luodun yksityisen avaimen ja CSR:n avulla ja tallenna se ' mycert.crt ” tiedosto. Suorita tätä tarkoitusta varten alla oleva komento:

openssl x509 -tarv -sisään mycert.csr -merkkiavain mycert.key -ulos mycert.crt -päiviä 365

Luotuaan TLS-varmenteet käyttäjä voi luoda salaisen TLS:n noudattamalla alla olevaa osaa.

Kuinka luoda salainen TLS Kubernetesissa?

Tietojen salauksessa käytettävät TLS-sertifikaatit (Transport Layer Security) ovat välttämättömiä sovellusten turvallisuuden ja turvallisen viestinnän varmistamiseksi Kubernetes-klusterin sisällä ja ulkopuolella. Kubernetes-salaisuuden avulla voimme upottaa TLS-varmenteen käynnissä oleviin podeihin salaisen TLS:n kautta. Voit luoda salaisen TLS:n Kubernetesissa noudattamalla seuraavia ohjeita.

Vaihe 1: Käynnistä Minikube Cluster

Käynnistä minikube-klusteri käynnistämällä ensin Windows PowerShell järjestelmänvalvojana. Tämän jälkeen luo ja suorita klusteri käyttämällä ' minikube aloitus 'komento:

minikube aloitus

Vaihe 2: Hanki solmut

Käytä Kubernetes-solmua tarkistaaksesi, onko klusteri käynnistetty vai ei:

minikube saada solmut

Vaihe 3: Luo salainen TLS

Luo TLS-salaisuus Kubernetesissa käyttämällä ' kubectl luo salaisuus –cert= –avain= ”komento. Tässä salainen tyyppi voi olla ' yleinen ', ' tls ”, tai ” Docker-rekisteri ”. TLS-salaisuuden luomiseksi olemme asettaneet salaisuuden tyypiksi 'tls':

kubectl luo salaisuus tls demo-secret -- varm =C:\Users\Dell\cert\mycert.crt --avain =C:\Users\Dell\cert\mycert.key

Vaihe 4: Hanki salaisuudet

Vahvistusta varten luettele Kubernetes-salaisuus käyttämällä annettua komentoa:

kubectl saada salaisuus

Täällä voit nähdä, että olemme luoneet tehokkaasti demo-salaisuus 'joka sisältää' 2 ” tietoarvot:

Vaihe 5: Kuvaile Secret

Jos haluat nähdä, kuinka tietoja tarkastellaan tai tallennetaan salassa, kuvaile salaisuus käyttämällä ' kubectl description secret 'komento:

kubectl kuvaa salaisen demo-salaisuuden

Voit nähdä arvot tallennetaan tavuina, eikä niitä voi tarkastella suoraan toisin kuin Kubernetes ConfigMaps:

Kuinka luoda salainen TLS Yaml-tiedoston kautta?

Jos haluat luoda salaisen TLS:n yaml-tiedoston kautta, luo ensin ' salaisuus.yml '-tiedosto, lisää tls base64-koodattu varmenne ' tls.crt ”-näppäintä ja lisää base64-koodattu avain ' tls.key ”.

Esittelyä varten noudata lueteltuja vaiheita.

Vaihe 1: Luo Yaml-tiedosto

Luo tiedosto nimeltä ' salaisuus.yml ' ja liitä annettu koodi:

apiVersion : v1

tiedot
:

tls.crt
: 'base64-koodattu varmenne'

tls.key
: 'base64-koodattu avain'

kiltti
: Salaisuus

metatiedot
:

nimi
: mytls-salaisuus

nimiavaruus
: oletuksena

tyyppi
: kubernetes.io/tls

Korvaa yllä olevassa koodinpätkässä 'tls.crt'- ja 'tls.key'-avainarvot alkuperäisillä varmenteillasi ja avainarvoillasi:

Vaihe 2: Luo salaisuus

Käytä nyt salaista yaml-tiedostoa ' kubectl apply -f 'komento:

kubectl soveltaa -f salaisuus.yml

Tulos osoittaa, että olemme onnistuneesti luoneet ' mytls-salaisuus 'Yaml-tiedostolla:

Huomautus: Näytä TLS-varmenne ja yksityinen avain

Jos haluat tarkastella base64-koodattua varmennetta ja käyttää sitä yaml-tiedostossa, suorita ' cat | base64 ”komento git bash -päätteessä:

kissa mycert.crt | base64

Jos haluat tarkastella base64-koodattua avainta, käytä ' cat | base64 'komento:

kissa mycert.key | base64

Kuinka upottaa salainen TLS Kubernetes Podiin?

Kun salainen TSL on luotu, käyttäjä voi upottaa sen Kubernetes podiin. Käytä tätä varten seuraavia ohjeita.

Vaihe 1: Luo Yaml-tiedosto

Tee tiedosto nimeltä ' pod.yml ” tiedosto ja liitä alla oleva katkelma tiedostoon:

apiVersio: v1

laji: Pod

metatiedot:

nimi: demo-pod

spec:

säiliöt:

- nimi: html-cont

kuva: rafia098 / html-img: 1.0

envLähettäjä:

- SecretRef:

nimi: demo-salaisuus

Yllä olevassa katkelmassa:

  • ' kiltti ”-avain määrittää käyttäjän luoman Kubernetes-resurssin.
  • ' nimi ” -näppäin asettaa podin nimen.
  • ' astiat ” -näppäin tallentaa kontin tiedot.
  • ' nimi ' -näppäin 'säilöt'-näppäimen alla asettaa säilön nimen.
  • ' kuva ” -näppäin tarjoaa sovelluksen tai säilön kuvan, jonka avulla voit luoda ja käynnistää sovelluksen säilön sisällä.
  • ' envFrom ”-näppäin asettaa ympäristömuuttujan muista Kubernetes-resursseista. Jos haluat upottaa salaisen TLS:n koteloon, ' salainenRef ' käytetään antamaan salainen viittaus. Upota yllä oleva salainen TLS määrittämällä salaisuuden nimi 'name'-avaimessa.

Vaihe 2: Luo tai päivitä Pod

Avaa seuraavaksi kansio, jossa pod.yml 'tiedosto luodaan:

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

Luo yaml-tiedosto tai määritä se uudelleen käyttämällä ' kubectl soveltaa 'komento:

kubectl soveltaa -f pod.yml

Vaihe 3: Avaa Kubernetes Pods

Tarkistaaksesi, luettele Kubernetes-tyypit:

kubectl get pod

Täällä voit nähdä, että olemme luoneet ' demo-pod ” onnistuneesti:

Vaihe 4: Kuvaile koteloa

Voit tarkistaa, onko pod upottanut salaisen TLS:n vai ei, kuvaile podia käyttämällä alla olevaa komentoa:

kubectl kuvaa pod demo-pod

Alla oleva tulos osoittaa, että olemme onnistuneesti upottaneet TLS-salaisuuden podiin:

Olemme käsitelleet kuinka luoda salainen TLS ja upottaa se podissa toimivaan Kubernetes-sovellukseen.

Johtopäätös

Jos haluat luoda salaisen TLS:n Kubernetesissa, luo ensin TLS-allekirjoitettu varmenne ja yksityinen avain. Käynnistä sen jälkeen Kubernetes-klusteri ja suorita ' kubectl luo salaisuus –cert= –avain= ”komento. Käyttäjät voivat myös luoda salaisen TLS:n käyttämällä yaml-luetteloa. Tämä viesti on havainnollistanut, kuinka salainen TLS luodaan ja kuinka salaisuus upotetaan käynnissä olevaan sovellukseen tai pod.