Configurar los conjuntos de límites de capacidades (capability bounding sets)
Para configurar el conjunto de límites de capacidades (capability bounding set) de un contenedor de Docker, puede utilizar las opciones --cap-add
y --cap-drop
al iniciar el contenedor.
La opción --cap-add
le permite agregar una o más capacidades (capabilities) al conjunto de límites del contenedor, mientras que la opción --cap-drop
le permite eliminar una o más capacidades del conjunto de límites del contenedor.
A continuación, se muestra un ejemplo de cómo iniciar un contenedor con la capacidad CAP_NET_ADMIN
agregada y la capacidad CAP_SYS_ADMIN
eliminada:
docker run --cap-add=NET_ADMIN --cap-drop=SYS_ADMIN -it ubuntu:22.04 /bin/bash
En este ejemplo, el contenedor tendrá la capacidad CAP_NET_ADMIN
, que le permite realizar operaciones relacionadas con la red, pero se eliminará la capacidad CAP_SYS_ADMIN
, que otorga una amplia gama de privilegios de administración del sistema.
También puede ver el conjunto de límites de capacidades actual de un contenedor en ejecución utilizando el comando docker inspect
:
docker inspect <container_id> | grep "CapBnd"
Esto mostrará el conjunto de límites de capacidades actual para el contenedor especificado.
graph TD
A[Docker Container] --> B[Capability Bounding Set]
B --> C[--cap-add=NET_ADMIN]
B --> D[--cap-drop=SYS_ADMIN]
C --> E[CAP_NET_ADMIN]
D --> F[CAP_SYS_ADMIN]
Tabla 1: Opciones comunes de conjuntos de límites de capacidades (capability bounding sets) de Docker
Opción |
Descripción |
--cap-add=<capability> |
Agrega la capacidad especificada al conjunto de límites del contenedor. |
--cap-drop=<capability> |
Elimina la capacidad especificada del conjunto de límites del contenedor. |
Configurar el conjunto de límites de capacidades para sus contenedores de Docker es un paso importante para proteger sus aplicaciones y reducir la superficie de ataque.