0Pricing
Docker & DevOps Fundamentals · Lección

Políticas de red y mínimo privilegio

Restrinja el tráfico entre contenedores con políticas de red de denegación predeterminada, reglas explícitas de autorización y el principio de mínimo privilegio aplicado a las redes.

Políticas de red y mínimo privilegio es una lección gratuita de Docker & DevOps Fundamentals en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Docker & DevOps Fundamentals, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Docker & DevOps Fundamentals incluye 4 lecciones en total.

Permitir todo de forma predeterminada es arriesgado

De forma predeterminada, los contenedores de un clúster normalmente pueden comunicarse con cualquier otro contenedor. Un pod comprometido puede acceder así a bases de datos y servicios internos sin restricciones. Las políticas de red cierran esa puerta.

Mínimo privilegio para la red

El principio del mínimo privilegio también se aplica al tráfico: un servicio solo debe aceptar e iniciar las conexiones que realmente necesita, y ninguna más.

¿Qué es una política de red?

Una NetworkPolicy es un objeto de Kubernetes que selecciona pods por etiqueta y especifica qué tráfico de entrada y salida está permitido. Un plugin de CNI (Calico, Cilium) la aplica.

Necesita un CNI que aplique las reglas

Al igual que Ingress necesita un controlador, NetworkPolicies necesitan un CNI que las admita. En un plugin que las ignore, las reglas no tendrán ningún efecto y no se mostrará ningún error.

Denegar el tráfico de entrada de forma predeterminada

Empiece denegando todo el tráfico entrante a un namespace y permita después solo lo necesario. Un podSelector vacío coincide con todos los pods.

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-deny-ingress
spec:
  podSelector: {}
  policyTypes:
  - Ingress

Permitir tráfico específico

Ahora permita que solo los pods frontend accedan a la API en el puerto 8080. Todo lo demás seguirá bloqueado.

spec:
  podSelector:
    matchLabels:
      app: api
  ingress:
  - from:
    - podSelector:
        matchLabels:
          app: frontend
    ports:
    - port: 8080

Restringir el tráfico de salida

También puede limitar el tráfico saliente; por ejemplo, permitir que un pod se conecte únicamente a la base de datos para evitar que un pod secuestrado se comunique con un servidor externo.

spec:
  podSelector:
    matchLabels:
      app: api
  policyTypes:
  - Egress
  egress:
  - to:
    - podSelector:
        matchLabels:
          app: db

Selectores de namespace

Las reglas pueden coincidir mediante namespaceSelector para permitir tráfico entre namespaces solo desde namespaces de confianza; es útil para servicios de plataforma compartidos.

from:
- namespaceSelector:
    matchLabels:
      team: platform

Permitir DNS

Un problema habitual: una denegación estricta predeterminada del tráfico de salida también bloquea DNS y rompe la resolución de nombres. Recuerde permitir UDP/TCP 53 hacia kube-dns.

egress:
- to: []
  ports:
  - protocol: UDP
    port: 53

Más allá de Kubernetes

Los usuarios de Docker obtienen un beneficio relacionado con las redes definidas por el usuario: solo los contenedores de la misma red pueden comunicarse entre sí, lo que aísla las aplicaciones no relacionadas.

docker network create --internal backend

Mentalidad de confianza cero

Las redes con mínimo privilegio le acercan a la confianza cero: suponga que la red es hostil, autentique y autorice cada conexión y no permita nada de forma predeterminada.

Comprobación rápida

¿Cuál es una estrategia sensata para empezar con las políticas de red?

Resumen

Ahora puede restringir el tráfico de forma segura:

  • Aplique la denegación predeterminada y luego reglas explícitas de permiso
  • Controle el tráfico de entrada y salida por etiqueta/namespace
  • Recuerde permitir DNS; se necesita un CNI que aplique las reglas
  • Las redes internas de Docker proporcionan un aislamiento similar

Las redes con mínimo privilegio reducen el alcance del impacto de cualquier brecha.

Preguntas frecuentes

¿La lección «Políticas de red y mínimo privilegio» es gratis?

Sí — el texto completo de «Políticas de red y mínimo privilegio» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Docker & DevOps Fundamentals, actualiza a CoddyKit PRO. El curso de Docker & DevOps Fundamentals incluye 4 lecciones en total.

¿Qué aprenderé en «Políticas de red y mínimo privilegio»?

Restrinja el tráfico entre contenedores con políticas de red de denegación predeterminada, reglas explícitas de autorización y el principio de mínimo privilegio aplicado a las redes. Practicas Docker & DevOps Fundamentals con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Docker & DevOps Fundamentals?

No se requiere experiencia previa. Docker & DevOps Fundamentals en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Políticas de red y mínimo privilegio»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Docker & DevOps Fundamentals?

Sí. Cada lección de Docker & DevOps Fundamentals incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Análisis de seguridad de imágenes de contenedor
  2. Seguridad de contenedores en tiempo de ejecución
  3. Gestión de Secrets y RBAC
  4. Políticas de red y mínimo privilegio
← Volver a Docker & DevOps Fundamentals