Az Ingress az alkalmazások bejövő forgalmának kezelésére és az SSL leállítására is szolgál. Ezzel szemben a titkokat bizalmas információk és TLS-tanúsítványok tárolására használják az alkalmazásokhoz.
Ez a bejegyzés illusztrálja:
- Mik a Kubernetes titkai?
- Előfeltétel: Privát kulcs és tanúsítvány generálása
- Hogyan lehet titkos TLS-t létrehozni a Kubernetesben?
- Hogyan lehet titkot létrehozni a Yaml fájlon keresztül?
- Hogyan ágyazható be a titok a Kubernetes Podba?
- Következtetés
Mik a Kubernetes titkai?
A Titkok a Kubernetes egyik erőforrása, amelyet bizalmas információk, például felhasználói bejelentkezési adatok, kulcsok, tanúsítványok vagy tokenek tárolására használnak. A titkok egyénileg is létrehozhatók, és hüvelyekhez kapcsolhatók. Megakadályozza, hogy a fejlesztő bizalmas adatokat adjon meg kódban, és egy extra biztonsági réteget is biztosít. Különféle titkok hozhatók létre és használhatók fel. A leggyakrabban használt titkok a következők:
Általános titok: Az általános titkokat alapvető információk, például jelszavak, tokenek, API-kulcsok, OAuth-kulcsok és így tovább tárolására használják.
TLS titkos: A TLS-titkok a hitelesítésszolgáltató által aláírt privát kulcsok és tanúsítványok tárolására szolgálnak. A Kubernetesen belül futó alkalmazások biztonságának és a fürtön belüli kommunikáció biztonságának biztosítása érdekében a felhasználónak általában létre kell hoznia és be kell ágyaznia TLS-titkokat a podba.
Docker Registry: A docker rendszerleíró adatbázis hitelesítő adatainak tárolására szolgál, hogy könnyen lehívhassa a képeket a rendszerleíró adatbázisból.
Előfeltétel: Privát kulcs és tanúsítvány generálása
A biztonság javítása érdekében a tanúsítvány és a privát kulcs létrehozásához használja az OpenSSL-t, amely létrehozza a CSR-t (tanúsítvány-aláíró kérést) és a privát kulcsot. Ezután használja a CSR-t az önaláírt vagy CA-tanúsítványok létrehozásához.
Az OpenSSL-parancsok Windows rendszeren való használatához a felhasználóknak telepíteniük kell a Git-et. Ebből a célból kövesse a linkelt ' Telepítse a git-et Windowsra ” cikk.
A git telepítése után kövesse az alábbi utasításokat a privát kulcs és az aláírt tanúsítvány létrehozásához.
1. lépés: Indítsa el a Git Bash terminált
Keressen a ' Git Bash ” a Start menüben, és indítsa el a terminált:
Az aktuális könyvtár ellenőrzéséhez használja a ' pwd 'parancs:
pwdJelenleg a %USERPROFILE% könyvtárban dolgozunk:
2. lépés: Hozzon létre új könyvtárat
Hozzon létre egy új könyvtárat a tanúsítványok és a privát kulcs mentéséhez:
mkdir certKeresse meg az újonnan létrehozott könyvtárat a „ CD 'parancs:
CD cert
3. lépés: Privát kulcs létrehozása
Most állítsa elő a privát kulcsot a megadott paranccsal. Itt a generált privát kulcs a „ mycert.key ”:
openssl genpkey -algoritmus RSA -ki mycert.key
4. lépés: CSR létrehozása
A CSR (tanúsítványszolgáltatási kérelem) létrehozásához az aláírt tanúsítvány megszerzéséhez használja a megadott parancsot:
openssl req -új -kulcs mycert.key -ki mycert.csr
5. lépés: Tanúsítvány létrehozása
Végül a generált privát kulcs és CSR használatával hozzon létre egy tanúsítványt, és mentse el a „ mycert.crt ” fájlt. Ebből a célból hajtsa végre az alábbi parancsot:
openssl x509 -req -ban ben mycert.csr -jelkulcs mycert.key -ki mycert.crt -napok 365
A TLS-tanúsítványok létrehozása után a felhasználó létrehozhatja a titkos TLS-t az alábbi szakasz követésével.
Hogyan lehet titkos TLS-t létrehozni a Kubernetesben?
Az alkalmazások biztonságának és a biztonságos kommunikációnak a Kubernetes-fürtön belüli és kívüli biztosításához elengedhetetlenek a TLS (Transport Layer Security) tanúsítványok, amelyeket az adatok titkosításában használnak. A Kubernetes-titok lehetővé teszi, hogy a TLS-tanúsítványt titkos TLS-en keresztül beágyazzuk futó pod-okba. A Kubernetesben titkos TLS létrehozásához kövesse az alábbi utasításokat.
1. lépés: Indítsa el a Minikube Clustert
A minikube-fürt elindításához először indítsa el a Windows PowerShellt rendszergazdaként. Ezután hozza létre és futtassa a fürtöt a „ minikube start 'parancs:
minikube start
2. lépés: Szerezzen csomópontokat
Nyissa meg a Kubernetes csomópontot, és ellenőrizze, hogy a fürt elindult-e vagy sem:
minikube kap csomópontokat
3. lépés: Hozzon létre titkos TLS-t
Hozzon létre TLS-titkot a Kubernetesben a ' kubectl titkos létrehozása
4. lépés: Szerezze be a titkokat
A megerősítéshez írja le a Kubernetes titkát a megadott paranccsal:
kubectl kap titkotItt láthatja, hogy hatékonyan létrehoztunk egy „ demo-titok ', amely tartalmazza a ' 2 ” adatértékek:
5. lépés: Ismertesse a titkot
Az adatok titkosított megtekintésének vagy tárolásának megtekintéséhez írja le a titkot a „ kubectl írja le a titkos
Láthatja, hogy az értékek bájtokban vannak tárolva, és a Kubernetes ConfigMaps-szel ellentétben nem tekinthetők meg közvetlenül:
Hogyan lehet titkos TLS-t létrehozni a Yaml fájlon keresztül?
Ha titkos TLS-t szeretne létrehozni egy yaml fájlon keresztül, először hozzon létre egy „ titkos.yml ” fájlt, adja hozzá a tls base64 kódolt tanúsítvány ban,-ben ' tls.crt ” gombot, és adja hozzá a base64 kódolású kulcs ban,-ben ' tls.key ”.
A bemutatóhoz kövesse a felsorolt lépéseket.
1. lépés: Hozzon létre Yaml fájlt
Hozzon létre egy fájlt ' titkos.yml ” és illessze be a megadott kódot:
apiVersion : v1adat :
tls.crt : 'base64 kódolt tanúsítvány'
tls.key : 'base64 kódolt kulcs'
kedves : Titok
metaadatokat :
név : mytls-titok
névtér : alapértelmezett
típus : kubernetes.io/tls
A fenti kódrészletben cserélje ki a „tls.crt” és „tls.key” kulcsértékeket az eredeti tanúsítványra és kulcsértékekre:
2. lépés: Hozzon létre egy titkot
Most alkalmazza a titkos yaml fájlt a „ kubectl apply -f
A kimenet azt mutatja, hogy sikeresen létrehoztuk a „ mytls-titok ” yaml fájl használatával:
Megjegyzés: Tekintse meg a TLS-tanúsítványt és a privát kulcsot
A base64 kódolású tanúsítvány megtekintéséhez és a yaml fájlban való használatához futtassa a „ cat
A base64 kódolású kulcs megtekintéséhez használja a „ cat
Hogyan ágyazható be a titkos TLS a Kubernetes Podba?
A titkos TSL létrehozása után a felhasználó beágyazhatja azt a Kubernetes podba. Ehhez kövesse az alábbi utasításokat.
1. lépés: Hozzon létre Yaml fájlt
Hozzon létre egy '' nevű fájlt pod.yml ” fájlt, és illessze be az alábbi részletet a fájlba:
apiVerzió: v1fajta: hüvely
metaadatok:
név: demo-pod
specifikáció:
konténerek:
- név: html-cont
kép: rafia098 / html-img: 1.0
envFrom:
- SecretRef:
név: demo-titok
A fenti részletben:
- ' kedves ” kulcs határozza meg a felhasználó által létrehozott Kubernetes-erőforrást.
- ' név ” gomb beállítja a pod nevét.
- ' konténerek ” gomb tárolja a tároló információit.
- ' név ” gomb a „tárolók” gomb alatt beállítja a tároló nevét.
- ' kép ” gomb biztosítja az alkalmazás vagy tároló képét az alkalmazás létrehozásához és elindításához a tárolóban.
- ' envFrom ” gomb más Kubernetes-erőforrásokból állítja be a környezeti változót. Itt, hogy a titkos TLS-t egy podba ágyazza, ' titkosRef ” titkos hivatkozás biztosítására szolgál. A fenti titkos TLS beágyazásához adja meg a titok nevét a „name” kulcsban.
2. lépés: A Pod létrehozása vagy frissítése
Ezután nyissa meg azt a mappát, ahol a „ pod.yml ” fájl létrejön:
CD C:\Users\Dell\Documents\Kubernetes\Secret
Alkalmazza a yaml fájlt a pod létrehozásához vagy újrakonfigurálásához a „ kubectl alkalmazni 'parancs:
kubectl alkalmazni -f pod.yml
3. lépés: A Kubernetes Pods elérése
Az ellenőrzéshez sorolja fel a Kubernetes podokat:
kubectl get podItt láthatja, hogy létrehoztuk a ' demo-pod ” sikeresen:
4. lépés: Ismertesse a tokot
Annak ellenőrzéséhez, hogy a pod beágyazta-e a titkos TLS-t vagy sem, írja le a pod az alábbi paranccsal:
kubectl írja le a pod demo-podotAz alábbi kimenet azt mutatja, hogy sikeresen beágyaztuk a TLS-titkot a podba:
Bemutattuk, hogyan hozhat létre titkos TLS-t, és hogyan ágyazhatja be a podban futó Kubernetes alkalmazásba.
Következtetés
A titkos TLS létrehozásához a Kubernetesben először hozzon létre egy TLS aláírt tanúsítványt és privát kulcsot. Ezután indítsa el a Kubernetes-fürtöt, és futtassa a „ kubectl titkos létrehozása