0Pricing
Docker & Kubernetes for Developers · Aula

Encerramento de TLS e proteção do Ingress com HTTPS

Disponibilize tráfego por HTTPS configurando TLS no seu Ingress, armazenando certificados como Secrets e automatizando a emissão com cert-manager.

Encerramento de TLS e proteção do Ingress com HTTPS é uma aula grátis de Docker & Kubernetes for Developers no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Docker & Kubernetes for Developers, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Docker & Kubernetes for Developers inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

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.key

Adding 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: 80

How 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: nginx

Annotating 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-prod

HTTP-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:443

Quick 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.

Perguntas Frequentes

A aula “Encerramento de TLS e proteção do Ingress com HTTPS” é grátis?

Sim — o texto completo de “Encerramento de TLS e proteção do Ingress com HTTPS” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Docker & Kubernetes for Developers, atualize para CoddyKit PRO. O curso de Docker & Kubernetes for Developers inclui 4 aulas no total.

O que vou aprender em “Encerramento de TLS e proteção do Ingress com HTTPS”?

Disponibilize tráfego por HTTPS configurando TLS no seu Ingress, armazenando certificados como Secrets e automatizando a emissão com cert-manager. Você pratica Docker & Kubernetes for Developers com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Docker & Kubernetes for Developers?

Nenhuma experiência prévia é necessária. Docker & Kubernetes for Developers no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Encerramento de TLS e proteção do Ingress com HTTPS”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Docker & Kubernetes for Developers?

Sim. Cada aula de Docker & Kubernetes for Developers inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Ingress e roteamento no Kubernetes
  2. Implementação de políticas de rede
  3. Descoberta de serviços e DNS no K8s
  4. Encerramento de TLS e proteção do Ingress com HTTPS
← Voltar para Docker & Kubernetes for Developers