Red de conocimiento informático - Material del sitio web - Cómo configurar un entorno chroot en Ubuntu 14.04

Cómo configurar un entorno chroot en Ubuntu 14.04

Puede haber muchas razones por las que desee aislar una aplicación, un usuario o un entorno de su sistema Linux. Los diferentes sistemas operativos tienen diferentes métodos de implementación. En Linux, el método típico es el entorno chroot.

En este tutorial, te guiaré paso a paso sobre cómo utilizar el comando chroot para configurar un entorno independiente y separado del sistema real. Esta función está disponible principalmente para proyectos de prueba y los siguientes pasos se realizan en un servidor privado virtual (VPS) Ubuntu 14.04.

Aprender a construir rápidamente un entorno chroot simple es una habilidad muy práctica de la que la mayoría de los administradores de sistemas pueden beneficiarse.

Entorno Chroot

El entorno chroot convierte temporalmente un directorio local en un directorio raíz mediante llamadas al sistema. En términos generales, el directorio raíz del sistema es el punto de montaje "/". Sin embargo, después de usar el comando chroot, puede usar otro directorio como directorio raíz.

En principio, cualquier aplicación que se ejecute en un entorno chroot no puede acceder a otra información en el sistema (traducción LCTT: use chroot para convertir un directorio en un directorio raíz, y las aplicaciones que se ejecutan en él solo pueden acceder al directorio Archivos No se puede acceder a fuera del directorio. Sin embargo, las aplicaciones que se ejecutan en un entorno chroot pueden acceder a información fuera del entorno a través del sistema de archivos sysfs, por lo que existe un modificador "en principio"

Uso del entorno Chroot

Probar un servicio de aplicación inestable no afectará a todo el sistema host.

Incluso si realiza algunas operaciones incorrectas con privilegios de root y estropea el entorno chroot, no hay ningún impacto en el sistema host.

Puedes ejecutar otro sistema operativo en tu sistema.

Por ejemplo, puedes compilar, instalar y probar software en un entorno chroot. También puede usar chroot para crear un entorno de 32 bits en un entorno de 64 bits y luego ejecutar un programa de 32 bits (LCTT Nota: si su entorno real es de 32 bits, no puede usar chroot como 64 bits. entorno.

Sin embargo, por razones de seguridad, el entorno chroot establece restricciones muy estrictas para usuarios sin privilegios en lugar de proporcionar una política de seguridad completa. Si necesita una solución completa de aislamiento de políticas de seguridad, puede considerarla. LXC, Docker, vservers, etc.

Debootstrap y Schroot

El uso del entorno chroot requiere instalar debootstrap y schroot, los cuales están en la fuente espejo de Ubuntu. Schroot se usa para crear. a. entorno schroot.

Debootstrap le permite instalar cualquier sistema Debian (o basado en Debian) a través del código fuente espejo. El sistema instalado contendrá los comandos

Schroot más básicos. permite a los usuarios usar el mismo mecanismo para crear un entorno chroot, pero realizará algunas comprobaciones de permisos al acceder al entorno chroot y permitirá a los usuarios realizar algunas configuraciones automáticas adicionales, como montar algunos sistemas de archivos.

En Ubuntu 14.04 LTS, podemos implementar esta función en dos pasos:

1. Instalar el paquete de software

El primer paso es instalar debootstrap y schroot en Ubuntu 14.04 LTS. sistema host:

$ sudo apt-get install boot belt

$ sudo apt-get install schroot

Configurar Schroot

Ahora que tenemos las herramientas, debemos especificar un directorio como entorno chroot. Para crear el directorio aquí:

sudo mkdir /linoxide

Edite el archivo de configuración schroot:

sudo nano/etc/ schroot/schroot . conf

Como recordatorio, ahora estamos en un sistema LTS.

Si queremos probar si un paquete se ejecuta en Ubuntu 13.10 (con nombre en código "Saucy Salamander"), podemos agregar lo siguiente al archivo de configuración:

[Playful]

descripción=UbuntuSaucy

location=/linoxide

priority=3

user=arun

rootgroup=root

Ajusta el información de configuración anterior según los requisitos de su sistema.

3. Utilice debootstrap para instalar el sistema Ubuntu de 32 bits.

El comando Debootstrap descargará e instalará un sistema mínimo en su entorno chroot. Siempre que tenga acceso al código fuente de la imagen, podrá instalar cualquier versión del sistema basado en Debian.

Hemos creado el directorio /linoxide para albergar el entorno chroot, ahora podemos ejecutar debootstrap en este directorio:

cadmio/óxido de litio

sudo debootstrap- variante = buildd-arch amd64 saucy/lino xide//Ubuntu/

sudo ch root/Lin oxide/de bootstrap/de bootstrap-segunda etapa

Puedes poner los parámetros de - arch Cambie a i386 u otra arquitectura, siempre que haya una fuente reflejada para esta arquitectura. También puede cambiar la fuente espejo /ubuntu/ a la fuente espejo más cercana. Para obtener más información, consulte la página de inicio oficial de Ubuntu.

Nota: si está creando un sistema de 32 bits en un sistema de 64 bits, debe agregar la opción -foreign al comando en la línea 3 anterior, como el siguiente comando:

sudo debootstrap-variant = buildd-foreign-arch i386 saucy/lino xide//Ubuntu/

La descarga tardará algún tiempo, dependiendo del rendimiento del ancho de banda de su red. El sistema más pequeño mide unos 500 metros

4. Complete el entorno chroot

Después de instalar el sistema, necesitamos realizar algunos trabajos de acabado para garantizar el funcionamiento normal del sistema. Primero, asegúrese de que el programa fstab del host pueda darse cuenta de la existencia del entorno chroot:

sudo nano /etc/fstab

Agregue la siguiente configuración al final del archivo:

proc / linoxide/proc valor predeterminado de proc 00

sysfs /linoxide/sys valor predeterminado de sysfs 00

Guarde y cierre el archivo.

Monte algunos sistemas de archivos en el entorno chroot:

$ sudo mount proc/linoxide/proc-t proc

$ sudo mount sysfs/Lin oxide/ sys -t sysfs

Copie el archivo /etc/hosts al entorno chroot para que el entorno chroot pueda usar la red:

$ sudo CP/etc/hosts/Lin oxide/etc /hosts

Finalmente, use el comando schroot -l para enumerar todos los entornos schroot en el sistema:

$ schroot -l

Use el siguiente comando para ingresar el entorno chroot:

p>

$ sudo chroot /linoxide/ /bin/bash

Prueba la versión instalada:

# lsb_release -a

# uname -a

Para utilizar la interfaz gráfica en un entorno chroot, necesita configurar la variable de entorno DISPLAY:

$ DISPLAY=:0.0 .

/applications

Hasta ahora he instalado con éxito Ubuntu 13.10 en Ubuntu 14.04 LTS.

Salir del entorno chroot:

#Exit

Limpiar y desinstalar el sistema de archivos:

$ sudo uninstall/test/process

$ sudo desinstalar/prueba/sistema