Giriş, uygulamaya gelen trafiği yönetmek ve ayrıca SSL sonlandırmak için kullanılır. Buna karşılık sırlar, gizli bilgileri ve uygulama için TLS sertifikalarını depolamak için kullanılır.
Bu yazı şunları gösterecektir:
- Kubernetes Sırları Nelerdir?
- Ön koşul: Özel Anahtar ve Sertifika Oluşturun
- Kubernetes'te Gizli TLS Nasıl Oluşturulur?
- Yaml Dosyası Aracılığıyla Sır Nasıl Oluşturulur?
- Kubernetes Pod'a Sır Nasıl Yerleştirilir?
- Çözüm
Kubernetes Sırları Nelerdir?
Sırlar, kullanıcı oturum açma kimlik bilgileri, anahtarlar, sertifikalar veya belirteçler gibi gizli bilgileri depolamak için kullanılan Kubernetes kaynaklarından biridir. Sırlar ayrı ayrı oluşturulabilir ve bölmelere bağlanabilir. Geliştiricinin kodda gizli veriler sağlamasını engeller ve ayrıca ekstra bir güvenlik katmanı sağlar. Farklı türde sırlar oluşturulabilir ve kullanılabilir. En sık kullanılan sırlar şunlardır:
Genel Sır: Genel sırlar; parolalar, belirteçler, API anahtarları, OAuth anahtarları vb. gibi temel bilgileri depolamak için kullanılır.
TLS Sırrı: TLS sırları, CA tarafından imzalanan özel anahtarları ve sertifikaları depolamak için kullanılır. Kubernetes içinde çalışan uygulamaların güvenliğini sağlamak ve küme içindeki iletişimi güvence altına almak için kullanıcının genellikle TLS gizli dizilerini oluşturması ve bölmeye yerleştirmesi gerekir.
Docker Kayıt Defteri: Görüntüleri kayıt defterinden kolayca çekmek için docker kayıt defteri kimlik bilgilerini depolamak için kullanılır.
Ön koşul: Özel Anahtar ve Sertifika Oluşturun
Güvenliği geliştirmek amacıyla sertifika ve özel anahtar oluşturmak için CSR'yi (sertifika imzalama isteği) ve özel anahtarı oluşturan OpenSSL'yi kullanın. Ardından, kendinden imzalı veya CA sertifikaları oluşturmak için CSR'yi kullanın.
OpenSSL komutlarını Windows'ta kullanmak için kullanıcıların Git'i yüklemeleri gerekir. Bu amaçla bağlantılı “ Git'i Windows'a yükleyin ' madde.
Git'i yükledikten sonra özel anahtar ve imzalı sertifika oluşturmak için aşağıdaki talimatları izleyin.
Adım 1: Git Bash Terminalini Başlatın
' için arama yapın Git Bash Başlat menüsünde ” ve terminali başlatın:
Geçerli dizini kontrol etmek için “ özürlü ' emretmek:
özürlüŞu anda %USERPROFILE% dizininde çalışıyoruz:
2. Adım: Yeni Dizin Oluşturun
Sertifikaları ve özel anahtarı kaydetmek için yeni bir dizin oluşturun:
mkdir sertifika“” seçeneğini kullanarak yeni oluşturulan dizine gidin. CD ' emretmek:
CD sertifika
3. Adım: Özel Anahtar Oluşturun
Şimdi verilen komut aracılığıyla özel anahtarı oluşturun. Burada oluşturulan özel anahtar “ mycert.key ”:
openssl genpkey -algoritma RSA -dışarı mycert.key
4. Adım: KSS oluşturun
İmzalı bir sertifika almak üzere CSR (sertifika hizmeti isteği) oluşturmak için verilen komutu kullanın:
openssl talebi -yeni -anahtar mycert.key -dışarı mycert.csr
Adım 5: Sertifika Oluşturun
Son olarak oluşturulan özel anahtarı ve CSR’yi kullanarak bir sertifika oluşturun ve bunu “ mycert.crt ' dosya. Bu amaçla aşağıdaki komutu yürütün:
openssl x509 -req -içinde mycert.csr -işaret anahtarı mycert.key -dışarı mycert.crt -günler 365
Kullanıcı TLS sertifikalarını oluşturduktan sonra aşağıdaki bölümü takip ederek gizli TLS'yi oluşturabilir.
Kubernetes'te Gizli TLS Nasıl Oluşturulur?
Kubernetes kümesi içinde ve dışında uygulama güvenliğinin ve güvenli iletişimin sağlanması için veri şifrelemede kullanılan TLS (Aktarım Katmanı Güvenliği) sertifikaları önemlidir. Kubernetes sırrı, TLS sertifikasını gizli TLS aracılığıyla çalışan pod'lara yerleştirmemize olanak tanır. Kubernetes'te gizli bir TLS oluşturmak için aşağıdaki talimatları izleyin.
Adım 1: Minikube Cluster'ı başlatın
Minikube kümesini başlatmak için öncelikle Windows PowerShell'i yönetici olarak başlatın. Bundan sonra “” komutunu kullanarak kümeyi oluşturun ve çalıştırın. minikube başlangıcı ' emretmek:
minikube başlangıcı
2. Adım: Düğümleri Alın
Kümenin başlatılıp başlatılmadığını kontrol etmek için Kubernetes düğümüne erişin:
minikube düğümleri al
3. Adım: Gizli TLS Oluşturun
Kubernetes'te TLS sırrını şunu kullanarak oluşturun: kubectl create secret
Adım 4: Sırları Alın
Onay için verilen komutu kullanarak Kubernetes sırrını listeleyin:
kubectl gizli olsunBurada etkili bir şekilde bir ' demo-gizli 'içeren' 2 ” veri değerleri:
Adım 5: Sırrı Açıklayın
Verilerin nasıl görüntülendiğini veya gizli olarak saklandığını görüntülemek için '' ifadesini kullanarak sırrı açıklayın. kubectl gizli
Değerlerin bayt cinsinden saklandığını ve Kubernetes ConfigMaps'ten farklı olarak doğrudan görüntülenemediğini görebilirsiniz:
Yaml Dosyası Aracılığıyla Gizli TLS Nasıl Oluşturulur?
Yaml dosyası aracılığıyla gizli bir TLS oluşturmak için öncelikle bir ' gizli.yml ” dosyasına ekleyin tls base64 kodlu sertifika içinde ' tls.crt ” tuşuna basın ve şunu ekleyin: base64 kodlu anahtar içinde ' tls.key ”.
Gösterim için listelenen adımları izleyin.
Adım 1: Yaml Dosyası Oluşturun
“adlı bir dosya oluşturun gizli.yml ”ve verilen kodu yapıştırın:
APIVersiyonu : v1veri :
tls.crt : 'base64 kodlu sertifika'
tls.key : 'base64 kodlu anahtar'
tür : Gizli
meta veri :
isim : mytls-sırrı
ad alanı : varsayılan
tip : kubernetes.io/tls
Yukarıdaki kod parçasında 'tls.crt' ve 'tls.key' anahtar değerlerini orijinal sertifikanız ve anahtar değerlerinizle değiştirin:
Adım 2: Bir Sır Oluşturun
Şimdi gizli yaml dosyasını “ kubectl application -f
Çıktı, '' başarıyla oluşturduğumuzu gösteriyor. mytls-sırrı ” yaml dosyasını kullanarak:
Not: TLS Sertifikasını ve Özel Anahtarı Görüntüleyin
Base64 kodlu sertifikayı görüntülemek ve yaml dosyasında kullanmak için “ cat
Base64 kodlu anahtarı görüntülemek için “ cat
Gizli TLS'yi Kubernetes Pod'a Nasıl Gömebilirim?
Kullanıcı, gizli TSL'yi oluşturduktan sonra bunu Kubernetes bölmesine yerleştirebilir. Bunu yapmak için aşağıdaki talimatları kullanın.
Adım 1: Yaml Dosyası Oluşturun
“adlı bir dosya oluşturun pod.yml ” dosyasını açın ve aşağıdaki pasajı dosyaya yapıştırın:
apiVersiyonu: v1tür: Kapsül
meta veriler:
isim: demo-pod
özellikler:
konteynerler:
- isim: html-cont
resim: rafia098 / html-img: 1.0
envGönderen:
- gizliRef:
isim: demo-gizli
Yukarıdaki kesitte:
- “ tür ” anahtarı, kullanıcının oluşturduğu Kubernetes kaynağını belirtir.
- “ isim ” tuşu bölme adını ayarlayacaktır.
- “ konteynerler ” tuşu konteyner bilgilerini saklayacaktır.
- “ isim “Konteynerler” tuşunun altındaki ” tuşu konteyner adını ayarlayacaktır.
- “ resim ” tuşu, konteynerin içinde uygulamayı oluşturmak ve başlatmak için uygulama veya konteyner görüntüsünü sağlayacaktır.
- “ envKimden ” tuşu ortam değişkenini diğer Kubernetes kaynaklarından ayarlayacaktır. Burada, gizli TLS'yi bir bölmeye yerleştirmek için ' gizliRef ” gizli bir referans sağlamak için kullanılır. Yukarıdaki gizli TLS'yi gömmek için 'ad' anahtarında sırrın adını belirtin.
Adım 2: Pod'u Oluşturun veya Yükseltin
Daha sonra “” dosyasının bulunduğu klasörü açın. pod.yml ” dosyası oluşturuldu:
CD C:\Kullanıcılar\Dell\Belgeler\Kubernetes\Gizli
“ kullanarak bölmeyi oluşturmak veya yeniden yapılandırmak için yaml dosyasını uygulayın. kubectl uygula ' emretmek:
kubectl uygula -F pod.yml
3. Adım: Kubernetes Pod'lara erişin
Doğrulama için Kubernetes bölmelerini listeleyin:
kubectl pod'u alBurada “ oluşturduğumuzu görebilirsiniz. demo-pod ” başarıyla:
Adım 4: Pod'u Tanımlayın
Bölmenin gizli TLS'yi katıştırıp katıştırmadığını kontrol etmek için aşağıdaki komutu kullanarak bölmeyi tanımlayın:
kubectl pod demo-pod'unu tanımlıyorAşağıdaki çıktı, TLS sırrını pod ile başarıyla yerleştirdiğimizi gösterir:
Gizli TLS'nin nasıl oluşturulacağını ve bölmede çalışan Kubernetes uygulamasına nasıl yerleştirileceğini ele aldık.
Çözüm
Kubernetes'te gizli TLS oluşturmak için öncelikle TLS imzalı sertifikayı ve özel anahtarı oluşturun. Bundan sonra Kubernetes kümesini başlatın ve “ kubectl create secret