Restrinja el acceso a un directorio específico en Linux

7

Quiero limitar el acceso a un solo directorio en el disco duro (archivos de registro) a pocos procesos (archivos de registro para un solo proceso, por ejemplo). Todos los procesos se ejecutan bajo el mismo usuario, por lo que las restricciones de acceso al sistema de archivos no son una opción.

¿Cuáles son mis opciones? AppArmor? SELinux?

No quiero restringir procesos individuales, quiero restringir todos los procesos para que no accedan a un directorio, excepto unos pocos seleccionados. Parece que AppArmor no puede hacer eso.

    
pregunta leoluk 01.02.2013 - 20:26
fuente

3 respuestas

6

El lado positivo: sí, puedes hacer esto con SELinux. El inconveniente: tienes que conocer SELinux. :)

Puede ejecutar estos procesos en diferentes dominios de SELinux. P.ej. Llamemos a dos procesos "privapp" y "unprivapp": privapp puede acceder a / var / lib / app / log y unprivapp no puede acceder a / var / lib / app / log, a pesar de que se ejecuta como el mismo usuario.

Entonces, creas dos dominios privapp_t y unprivapp_t y etiquetas los ejecutables como privapp_exec_t y unprivapp_exec_t . Luego etiqueta / var / lib / app / log como var_lib_privapp_rw_t e indica que solo un proceso que se ejecuta como privapp_t puede acceder a él.

Esta es la parte fácil, la parte difícil es expresar lo anterior en el lenguaje de la política, que es el bit que se sabe que lleva a los hombres y mujeres adultos a llorar. :)

    
respondido por el mricon 01.02.2013 - 21:23
fuente
1

No creo que pueda lograr eso con un solo usuario. Lo más cercano a lo que está hablando de lo que puedo pensar es la forma en que lo hace Android, y es simplemente que cada proceso se ejecuta bajo su propio usuario, por lo que solo puede acceder a sus propios archivos y archivos de aquellos procesos que lo permiten. acceso. Los procesos en sí mismos no son identidades fuertes en ningún sistema que conozca.

    
respondido por el AJ Henderson 01.02.2013 - 20:43
fuente
1

Recomendaría mirar en syslog remoto. De esta manera, puede estar seguro de que los registros no se pueden eliminar ni manipular.

    
respondido por el Lucas Kauffman 01.02.2013 - 21:03
fuente

Lea otras preguntas en las etiquetas