Hay diversas opciones que pueden usarse en las jaulas y varios tipos de formas de combinar un sistema FreeBSD servidor y las jaulas y poder disponer de aplicaciones de alto nivel. En esta sección se muestra lo siguiente:
Algunas de las opciones disponibles para personalizar el comportamiento y las restricciones de seguridad que pueden aplicarse en una jaula.
Algunas de las aplicaciones de alto nivel creadas para la administración de jaulas. Estas aplicaciones están en la colección de ports y pueden utilizarse en conjunto para implementar productos basados en jaulas.
La personalización a fondo de las jaulas se hace en su mayor parte mediante la
configuración de variables sysctl(8). Hay una
subcategoría especial de sysctl para que sea más sencillo organizar las opciones
más más importantes: se trata de las opciones de la jerarquía security.jail.*
del kernel de FreeBSD. A continuación veremos
una lista de las principales sysctl relacionadas con las jaulas y los valores
que tienen por omisión. Los nombres deberían describir por sí mismos qué función
tienen (N. del T.: En inglés, claro) pero si necesita más información sobre
ellas consulte las páginas de manual jail(8) y sysctl(8).
security.jail.set_hostname_allowed: 1
security.jail.socket_unixiproute_only: 1
security.jail.sysvipc_allowed: 0
security.jail.enforce_statfs: 2
security.jail.allow_raw_sockets: 0
security.jail.chflags_allowed: 0
security.jail.jailed: 0
El administrador del servidor
puede usar estas variables para añadir o quitar limitaciones impuestas por omisión
al usuario root. Tenga en cuenta que hay ciertas
limitaciones que no pueden quitarse. El usuario root
no puede montar o desmontar sistemas de ficheros desde su jaula. El usuario root no puede cargar o descargar reglas de devfs(8), configurar
reglas de cortafuegos ni ejecutar muchas otras tareas administrativas que
requieran modificaciones o acceso a datos internos del kernel, como cambiar el nivel
de seguridad securelevel
del kernel.
El sistema base de FreeBSD contiene un conjunto básico de herramientas que permiten el acceso a información sobre jaulas activas en el sistema, así como la conexión a una jaula para ejecutar comandos administrativos. jls(8) y jexec(8) forman parte del sistema base de FreeBSD y permiten ejecutar las siguientes tareas:
Mostrar una lista de jaulas activas y sus correspondientes identificadores de jaula (JID), dirección IP, nombre de máquina y ruta.
Conectarse a una jaula en ejecució desde el servidor y ejecutar un comando dentro de la jaula o realizar tareas administrativas dentro de dicha jaula. Esto es muy útil cuando el usuario root quiere apagar la jaula de forma limpia. La herramienta jexec(8) permite también arrancar una shell dentro de la jaula para realizar tareas administrativas. Veamos un ejemplo:
# jexec 1 tcsh
Entre las variadas aplicaciones ajenas al Proyecto FreeBSD que han ido apareciendo para administrar jaulas una de las más completas y útiles es sysutils/jailutils. Es un conjunto de pequeñas aplicaciones de mucha ayuda en la gestión de una jaula (jail(8)). Por favor, consulte su página web para más información.
Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Si tiene dudas sobre FreeBSD consulte la documentación antes de escribir a la lista
<[email protected]>.
Envíe sus preguntas sobre la documentación a <[email protected]>.