TLS Sonlandırma ve Ingress'i HTTPS ile Güvenceye Alma
Ingress'inizde TLS'yi yapılandırıp sertifikaları Secrets olarak saklayarak ve cert-manager ile sertifika alımını otomatikleştirerek trafiği HTTPS üzerinden sunun.
TLS Sonlandırma ve Ingress'i HTTPS ile Güvenceye Alma, CoddyKit'te ücretsiz bir Docker & Kubernetes for Developers dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Docker & Kubernetes for Developers öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Docker & Kubernetes for Developers kursu toplamda 4 dersten oluşur.
Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.
Why TLS at the Ingress
Terminating TLS at the Ingress lets one place handle HTTPS for many backend services, so internal apps can stay plain HTTP while users get encryption.
Certificates Live in Secrets
An Ingress references a TLS certificate stored in a Kubernetes Secret of type kubernetes.io/tls, holding a tls.crt and tls.key.
kubectl create secret tls my-tls \
--cert=tls.crt --key=tls.keyAdding a tls Block to Ingress
The spec.tls section maps hostnames to the secret that secures them.
spec:
tls:
- hosts:
- app.example.com
secretName: my-tls
rules:
- host: app.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: web
port:
number: 80How Termination Works
The Ingress controller decrypts incoming HTTPS, then forwards plain HTTP to the backend Service inside the cluster network.
The Certificate Renewal Problem
Certificates expire. Renewing and re-uploading them by hand is error prone, which is why automation tools exist.
Introducing cert-manager
cert-manager is an add-on that watches Ingress/Certificate resources and automatically obtains and renews certificates from issuers like Let us Encrypt.
Defining a ClusterIssuer
A ClusterIssuer tells cert-manager how to get certificates cluster-wide.
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: letsencrypt-prod
spec:
acme:
server: https://acme-v02.api.letsencrypt.org/directory
email: admin@example.com
privateKeySecretRef:
name: letsencrypt-prod
solvers:
- http01:
ingress:
class: nginxAnnotating the Ingress
Add an annotation so cert-manager issues a cert and stores it in the named secret automatically.
metadata:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prodHTTP-01 vs DNS-01
HTTP-01 proves domain ownership by serving a token over HTTP; DNS-01 proves it via a DNS TXT record and supports wildcard certificates.
Forcing HTTPS Redirects
Most controllers redirect HTTP to HTTPS by default. With NGINX you can control it via an annotation.
metadata:
annotations:
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"Verifying the Certificate
Check the Certificate resource and inspect the served cert.
kubectl get certificate
openssl s_client -connect app.example.com:443Quick Check
Test what you have learned.
Recap
You learned to terminate TLS at the Ingress using a tls Secret, automate issuance and renewal with cert-manager and a ClusterIssuer, choose HTTP-01 vs DNS-01, and force HTTPS redirects.
Sıkça Sorulan Sorular
“TLS Sonlandırma ve Ingress'i HTTPS ile Güvenceye Alma” dersi ücretsiz mi?
Evet — “TLS Sonlandırma ve Ingress'i HTTPS ile Güvenceye Alma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Docker & Kubernetes for Developers kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Docker & Kubernetes for Developers kursu toplamda 4 dersten oluşur.
“TLS Sonlandırma ve Ingress'i HTTPS ile Güvenceye Alma” dersinde ne öğreneceğim?
Ingress'inizde TLS'yi yapılandırıp sertifikaları Secrets olarak saklayarak ve cert-manager ile sertifika alımını otomatikleştirerek trafiği HTTPS üzerinden sunun. Docker & Kubernetes for Developers ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Docker & Kubernetes for Developers öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Docker & Kubernetes for Developers, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“TLS Sonlandırma ve Ingress'i HTTPS ile Güvenceye Alma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Docker & Kubernetes for Developers dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Docker & Kubernetes for Developers dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Kubernetes Ingress ve yönlendirme
- Ağ politikalarını uygulama
- K8s'te hizmet keşfi ve DNS
- TLS Sonlandırma ve Ingress'i HTTPS ile Güvenceye Alma