Introducción a las cárceles de FreeBSD

Una guía completa sobre las cárceles de FreeBSD: virtualización ligera para entornos seguros y aislados

Introducción a las cárceles de FreeBSD

Las cárceles de FreeBSD proporcionan virtualización a nivel del sistema operativo, lo que le permite dividir un sistema FreeBSD en varios minisistemas independientes llamados cárceles.

¿Qué son las cárceles?

Las cárceles son contenedores livianos que comparten el kernel del host pero tienen el suyo propio:

  • Jerarquía del sistema de archivos
  • Pila de red (opcional)
  • Cuentas de usuario
  • Espacio de proceso

¿Por qué utilizar las cárceles?

  1. Aislamiento de seguridad: los servicios comprometidos no pueden afectar al host
  2. Administración de recursos: limite el uso de CPU, memoria y disco
  3. Implementación sencilla: clonar y migrar entornos completos
  4. Pruebas: entorno seguro para experimentos

Creación básica de cárcel

# Create a jail root
mkdir -p /jails/myjail

# Extract base system
tar -xf /path/to/base.txz -C /jails/myjail

# Configure jail in /etc/jail.conf
myjail {
    host.hostname = "myjail.local";
    path = "/jails/myjail";
    exec.start = "/bin/sh /etc/rc";
    exec.stop = "/bin/sh /etc/rc.shutdown";
}

Próximos pasos

Una vez que tengas una cárcel básica en ejecución, explora:

  • VNET para virtualización completa de la red
  • Conjuntos de datos ZFS para almacenamiento en prisión.
  • Herramientas de gestión de cárceles como iocage o bastille