¿Cuándo es apropiado / prudente usar chroot?

9

Escuché sobre la necesidad de hacer chroot BIND todo el tiempo. Lo suficientemente justo. ¿Pero qué hay de otros programas? ¿Cuáles son las "reglas" (personales o ampliamente aceptadas / establecidas) para decidir qué programas deben ser encarcelados?

-METRO

Mike B
fuente

Respuestas:

5

En general, es posible que desee utilizar chroot por varias razones:

  • necesita otra distribución / arquitectura / versión de distribución sin querer usar OpenVZ o una máquina virtual. Por ejemplo, uso chroots para tener entornos de compilación i386 y amd64 en una máquina amd64.
  • restringir el acceso al sistema a los usuarios. Por ejemplo, puede usar chroot junto con scponly para restringir los comandos a los que los usuarios tienen acceso. Este es un sistema de encarcelamiento muy limitado ya que todavía tienen acceso a la red, por ejemplo.
  • restringir el acceso al sistema a los programas. En general, es posible que desee hacer eso principalmente para los demonios, como bind o apache. De esta manera, estos programas no tendrán acceso directo al sistema, por lo que si un atacante podría usar una violación de seguridad del programa, no accedería directamente al sistema, sino que se encontraría dentro del chroot. Ayuda a mejorar la seguridad, pero no es una garantía de que su sistema sea seguro.
Phaphink
fuente
12

Cuando la respuesta no es 'por motivos de seguridad'. Ver Abuso de chroot .

Cuando se sugirió que el chroot se usa con frecuencia como herramienta de seguridad, Adrian Bunk replicó: "las personas incompetentes que implementan soluciones de seguridad son un problema real". Alan agregó, "chroot no es y nunca ha sido una herramienta de seguridad. La gente ha construido cosas basadas en las propiedades de chroot pero extendidas (cárceles BSD, servidor de Linux) pero son bastante diferentes".

carro derribado
fuente
Esto es nuevo para mí ... muy interesante.
Joseph Kern
6

Si tiene un programa que requiere un conjunto / versiones de bibliotecas que es diferente de lo que está instalado en su sistema, sería un buen candidato para una instalación "chrooteada".

chroot también es útil para instalar diferentes versiones de distribución de Linux dentro de su propio entorno, sin usar una VM o emulador ( Configuración de un chroot de Debian en Red Hat ).

Laurent Parenteau
fuente
-2

Todo depende de lo paranoico que seas. Para la mayoría de las intenciones y propósitos, cada servicio debe ser modificado por razones de seguridad. Sin embargo, puede que no sea factible hacer esto para todo, ya que puede ser un poco tedioso intentar replicarlo todo. Otra posibilidad a considerar para fines de aislamiento es el uso de máquinas virtuales livianas como OpenVZ / VServer, que son esencialmente como chroot, solo que más.

sybreon
fuente