Puerto 10250 (Kubelet): para qué sirve y cómo protegerlo
El puerto 10250 TCP es el de la API del kubelet, el agente de Kubernetes que corre en cada nodo y gestiona sus contenedores. Si permite peticiones anónimas, cualquiera puede ejecutar órdenes dentro de los contenedores del nodo. Debe estar limitado a la red del clúster.
Qué es el puerto 10250
El kube-apiserver se comunica con cada kubelet por el 10250 para obtener logs, abrir terminales (kubectl exec) o reenviar puertos. Las configuraciones antiguas con --anonymous-auth=true eran una vía de ataque conocida.
¿Es peligroso tener abierto el puerto 10250?
Riesgo alto: No debe estar abierto a Internet.
- Ejecución de comandos en contenedores si se permite el acceso anónimo.
Cómo proteger el puerto 10250
- authentication.anonymous.enabled: false y authorization.mode: Webhook.
- Firewall: solo desde los nodos del plano de control.
Comandos y configuración
Comprobar si el puerto 10250 está abierto
sudo ss -tlnp | grep ':10250 '
nc -zv 203.0.113.10 10250
sudo nmap -p 10250 203.0.113.10¿Acepta peticiones anónimas?
curl -sk https://NODO:10250/pods
# debe responder 401 UnauthorizedTambién puedes comprobarlo desde fuera de tu red con nuestro escáner de puertos online.
Herramientas para comprobarlo
Preguntas frecuentes
¿Es lo mismo el 10250 que el 6443?
No. El 6443 es la API central del clúster; el 10250 es la API de cada nodo, a la que solo debe hablarle el plano de control.