Aislar a un usuario

Aislar a un usuario

En mi sistema Linux tengo dos usuarios, digamos A y B. Necesito aislar B de tal manera que B no pueda tener acceso al directorio de inicio de A, ni siquiera A mismo. ¿Cómo puedo solucionar el problema?

Respuesta1

Coloque el directorio de inicio de A en un directorio para el cual B no tenga establecido ningún bit x (ejecución).

Ejemplo: /home/prison/ASea el directorio de inicio de A. Establezca los permisos de prisony r-xr-x---el propietario: grupo en root:prisoners. Establezca los permisos /home/prison/Anormalmente, es decir, Aes el propietario.

Naturalmente, A todavía puede vincular sus archivos a otros directorios y hacerlos accesibles de esta manera. Realmente no hay forma de proteger los datos de los usuarios con acceso de lectura y la voluntad de duplicarlos.

Respuesta2

La respuesta de Thiton.es una buena manera de resolver esto.

Otra solución (más pesada y compleja) es crear una política adecuada si usa SELinux o AppArmour. Puede aplicar esto a nivel del sistema y A no podrá omitirlo en el nivel del sistema de archivos (con AppArmour) o incluso copiando archivos (con SELinux).

La implementación de dicha política se deja como ejercicio para el lector.

Respuesta3

Esto suena como un trabajo para chroot y alguien tiene un proyecto llamadokit de cárceleso parece hacer precisamente eso. Su experiencia puede ser diferente.

Respuesta4

Si nadie más necesita acceder a los archivos en el directorio de inicio de los usuarios, puede hacer que los directorios de inicio sean ejecutables/legibles/escribibles.solopor ese usuario.

sudo chmod 700 /home/username

Otros usuarios no podrán ver el interior de este directorio, acceder a él, etc.

información relacionada