Ingressi kasutatakse rakenduste sissetuleva liikluse haldamiseks ja ka SSL-i lõpetamiseks. Seevastu saladusi kasutatakse konfidentsiaalse teabe ja rakenduse TLS-sertifikaatide salvestamiseks.
See postitus illustreerib:
- Mis on Kubernetese saladused?
- Eeltingimus: privaatvõtme ja sertifikaadi genereerimine
- Kuidas luua Kubernetesis salajast TLS-i?
- Kuidas luua saladust Yaml-faili kaudu?
- Kuidas Kubernetes Podiga saladust manustada?
- Järeldus
Mis on Kubernetese saladused?
Saladused on üks Kubernetese ressurssidest, mida kasutatakse konfidentsiaalse teabe (nt kasutaja sisselogimismandaatide, võtmete, sertifikaatide või märkide) salvestamiseks. Saladusi saab luua eraldi ja ühendada kaunadega. See takistab arendajal koodis konfidentsiaalseid andmeid esitamast ja pakub ka täiendavat turvakihti. Saate luua ja kasutada erinevaid saladusi. Kõige sagedamini kasutatavad saladused on:
Üldine saladus: Üldiseid saladusi kasutatakse põhiteabe (nt paroolid, märgid, API-võtmed, OAuthi võtmed jne) salvestamiseks.
TLS-i saladus: TLS-i saladusi kasutatakse CA allkirjastatud privaatvõtmete ja sertifikaatide salvestamiseks. Kubernetese sees töötavate rakenduste turvalisuse tagamiseks ja klastrisisese suhtluse tagamiseks peab kasutaja tavaliselt TLS-i saladusi looma ja hoidikusse manustama.
Dockeri register: Seda kasutatakse dockeri registri mandaadi salvestamiseks, et hõlpsasti pilte registrist tõmmata.
Eeltingimus: privaatvõtme ja sertifikaadi genereerimine
Turvalisuse parandamiseks sertifikaadi ja privaatvõtme loomiseks kasutage OpenSSL-i, mis loob CSR-i (sertifikaadi allkirjastamise taotluse) ja privaatvõtme. Seejärel kasutage iseallkirjastatud või CA-sertifikaatide loomiseks CSR-i.
OpenSSL-i käskude kasutamiseks Windowsis peavad kasutajad installima Giti. Selleks järgige meie linki ' Installige git Windowsi ” artikkel.
Pärast giti installimist järgige privaatvõtme ja allkirjastatud sertifikaadi genereerimiseks allolevaid juhiseid.
1. samm: käivitage Git Bashi terminal
Tehke otsing ' Git Bash ” menüüs Start ja käivitage terminal:
Praeguse kataloogi kontrollimiseks kasutage ' pwd 'käsk:
pwdPraegu töötame kataloogis %USERPROFILE%:
2. samm: looge uus kataloog
Looge sertifikaatide ja privaatvõtme salvestamiseks uus kataloog:
mkdir sertLiikuge vastloodud kataloogi, kasutades nuppu ' cd 'käsk:
cd sert
3. samm: looge privaatvõti
Nüüd genereerige antud käsu kaudu privaatvõti. Siin salvestatakse loodud privaatvõti kausta ' mycert.key ”:
openssl genpkey - algoritm RSA - välja mycert.key
4. samm: looge CSR
CSR-i (sertifikaaditeenuse taotlus) genereerimiseks allkirjastatud sertifikaadi saamiseks kasutage antud käsku:
openssl req - uus -võti mycert.key - välja mycert.csr
5. samm: looge sertifikaat
Lõpuks looge loodud privaatvõtme ja CSR-i abil sertifikaat ja salvestage see kausta ' mycert.crt ” faili. Selleks käivitage järgmine käsk:
openssl x509 -req -sisse mycert.csr -märkvõti mycert.key - välja mycert.crt -päevad 365
Pärast TLS-i sertifikaatide loomist saab kasutaja luua salajase TLS-i, järgides allolevat jaotist.
Kuidas luua Kubernetesis salajast TLS-i?
Rakenduste turvalisuse ja turvalise suhtluse tagamiseks Kubernetese klastris ja väljaspool seda on andmete krüptimisel kasutatavad TLS-i (Transport Layer Security) sertifikaadid hädavajalikud. Kubernetese saladus võimaldab meil manustada TLS-i sertifikaadi töötavate podidega salajase TLS-i kaudu. Kubernetesis salajase TLS-i loomiseks järgige järgmisi juhiseid.
1. samm: käivitage Minikube Cluster
Minikube klastri käivitamiseks käivitage esmalt Windows PowerShell administraatorina. Pärast seda looge ja käivitage klaster, kasutades ' minikube start 'käsk:
minikube start
2. samm: hankige sõlmed
Juurdepääs Kubernetese sõlmele, et kontrollida, kas klaster on käivitatud või mitte:
minikube saada sõlmed
3. samm: looge salajane TLS
Looge Kubernetesis TLS-i saladus, kasutades ' kubectl loo salajane
4. samm: hankige saladused
Kinnitamiseks loetlege Kubernetese saladus, kasutades antud käsku:
kubectl saada saladusSiin näete, et oleme tõhusalt loonud demo-saladus ', mis sisaldab ' 2 ” andmeväärtused:
5. samm: kirjeldage saladust
Andmete salajase vaatamise või salvestamise vaatamiseks kirjeldage saladust, kasutades ' kubectl kirjeldab saladust
Näete, et väärtused on salvestatud baitides ja erinevalt Kubernetes ConfigMapsist ei saa neid otse vaadata:
Kuidas luua salajane TLS Yaml-faili kaudu?
Salajase TLS-i loomiseks yamli faili kaudu looge esmalt ' saladus.yml ” faili, lisage tls base64 kodeeritud sertifikaat ' tls.crt ” klahvi ja lisage base64 kodeeritud võti ' tls.key ”.
Demonstreerimiseks järgige loetletud samme.
1. samm: looge Yaml-fail
Looge fail nimega ' saladus.yml ” ja kleepige antud kood:
apiVersion : v1andmeid :
tls.crt : 'base64 kodeeritud sert'
tls.key : 'base64 kodeeritud võti'
lahke : Saladus
metaandmed :
nimi : mütlid-saladus
nimeruum : vaikimisi
tüüp : kubernetes.io/tls
Ülaltoodud koodilõigul asendage võtme väärtused „tls.crt” ja „tls.key” oma algse sertifikaadi ja võtmeväärtustega:
2. samm: looge saladus
Nüüd rakendage salajane yaml-fail läbi ' kubectl apply -f
Väljund näitab, et oleme edukalt loonud mütlid-saladus yaml-faili kasutades:
Märkus. Vaadake TLS-i sertifikaati ja privaatvõtit
Base64 kodeeritud sertifikaadi vaatamiseks ja selle kasutamiseks yaml-failis käivitage ' cat
Base64 kodeeritud võtme vaatamiseks kasutage ' kass
Kuidas manustada salajast TLS-i Kubernetes Podiga?
Pärast salajase TSL-i loomist saab kasutaja selle Kubernetes podiga manustada. Selleks kasutage järgmisi juhiseid.
1. samm: looge Yaml-fail
Looge fail nimega ' pod.yml ” faili ja kleepige allolev koodilõik faili:
apiversioon: v1tüüp: kaunad
metaandmed:
nimi: demo-pod
spetsifikatsioon:
konteinerid:
- nimi: html-cont
pilt: rafia098 / html-img: 1.0
envFrom:
- salajane viide:
nimi: demo-saladus
Ülaltoodud lõigus:
- “ lahke võti määrab Kubernetese ressursi, mille kasutaja loob.
- “ nimi ” klahv määrab kausta nime.
- “ konteinerid ” klahv salvestab konteineriteabe.
- “ nimi klahvi 'konteinerid' all määrab konteineri nime.
- “ pilt ” klahv pakub rakenduse või konteineri kujutist, et luua ja käivitada rakendus konteineris.
- “ envFrom ” võti määrab keskkonnamuutuja muudest Kubernetese ressurssidest. Siin salajase TLS-i hoidikusse manustamiseks: salajaneRef ” kasutatakse salajase viite andmiseks. Ülaltoodud salajase TLS-i manustamiseks määrake saladuse nimi võtmes 'nimi'.
2. samm: looge või uuendage Pod
Järgmisena avage kaust, kus pod.yml ” fail on loodud:
cd C:\Users\Dell\Documents\Kubernetes\Secret
Rakendage yaml-fail, et luua või uuesti seadistada, kasutades ' kubectl rakendada 'käsk:
kubectl rakendada -f pod.yml
3. toiming. Juurdepääs Kubernetes Podidele
Kontrollimiseks loetlege Kubernetese kaunad:
kubectl saada podSiin näete, et oleme loonud demo-pod ' edukalt:
4. samm: kirjeldage kambrit
Kontrollimaks, kas pod on manustatud salajase TLS-i või mitte, kirjeldage podi alloleva käsu abil:
kubectl kirjeldab pod demo-podAllolev väljund näitab, et oleme TLS-saladuse podiga edukalt manustanud:
Oleme käsitlenud salajast TLS-i loomist ja selle manustamist podis töötava Kubernetese rakendusega.
Järeldus
Salajase TLS-i loomiseks Kuberneteses looge esmalt TLS-iga allkirjastatud sertifikaat ja privaatvõti. Pärast seda käivitage Kubernetese klaster ja käivitage ' kubectl loo salajane