.png)
Esta es una schroot.conf
configuración típica que uso:
[label]
description=whatever
type=directory
personality=linux
preserve-environment=true
directory=/wherever
users=UserForSchrootOnly
profile=desktop_no_tmp
Ninguna root-users
directiva.
Separe los directorios de inicio para schroot env, sin utilizar el /home del host.
Me conecto con el usuario del sistema operativo host UserForSchrootOnly
en estos entornos schroot. Normalmente agrego este usuario al /etc/sudoers.d/someConf
archivo.adentroschroot, con una línea,
UserForSchrootOnly ALL=(ALL:ALL) ALL
Uno de mis objetivos con esta configuración es tener un entorno bastante aislado (no para un aislamiento estricto del tipo de auditoría, pero sí eficiente en la práctica), tanto a través de schroot como mediante el uso de un usuario del sistema operativo solo para este propósito y en ningún otro lugar. Por otro lado, por razones prácticas, es mucho más fácil tener este usuario dedicado como sudoer también, dentro del entorno schroot, por supuesto.
Un caso de uso es ejecutar una aplicación de código cerrado que no es de confianza.
Mi preocupación es:
dado que UserForSchrootOnly
el usuario es un sudoer dentro del entorno schroot, ¿es posible que esto comprometa la seguridad del sistema host debido a esto? ¿Alguna forma de utilizar sudo elevación dentro de schroot env, para acceder a algo fuera de schroot o fuera UserForSchrootOnly
del directorio de inicio en el sistema host?
La página de manual de schroot.conf menciona que el acceso root a chroot es un riesgo grave; No me preocupa el mal comportamiento del usuario. Mi preocupación es la aplicación de código cerrado que no es confiable y que se aprovecha del usuario sudoer que ejecuta.
Me gustaría señalar que, aunque este parece un escenario ideal para un sandbox como firejail
, no pude ejecutar algunas aplicaciones con él, ni siquiera agregué el --no-profile
parámetro. Además, otros escenarios incluyen aplicaciones que necesitan bibliotecas más recientes, por lo que necesito configurar un entorno schroot de Debian Testing o Ubuntu para ejecutar la aplicación que no es de confianza.