¿Es posible deshabilitar los permisos de archivo en un sistema de archivos ext3 o ext4?

10

¿Es posible deshabilitar los permisos de archivo en un sistema de archivos ext3 / 4?

Solo me pregunto si es posible deshabilitar o ignorar por completo los permisos de archivo en un sistema de archivos ext3 o ext4. Tal vez una opción de montaje?

No me preocupan las implicaciones de seguridad, ya que estaría haciendo esto para las pruebas y con los medios extraíbles.

Corey
fuente
2
¿Por qué desearía eliminar los permisos de archivo de un sistema de archivos ext3 o ext4? Fueron construidos teniendo en cuenta los permisos de archivos POSIX. Si está buscando utilizar un sistema de archivos con opciones de permisos limitadas, ¿quizás sería mejor algo como FAT32 o exFAT?
Rob Gibson
Tengo curiosidad por saber si hay una opción nativa de Linux
Corey
2
Es una opción nativa de Linux usar FAT32, ya que es un sistema de archivos compatible. Simplemente necesita usar un sistema de archivos que no esté diseñado para sistemas POSIX, ya que son permisos de archivos compatibles.
Rob Gibson
1
no $ sudo chmod -R 777 /your/filesystemharía el truco?
Red Cricket
1
@RedCricket sería una solución alternativa si la respuesta resulta ser no
Corey

Respuestas:

5

Eso no es lo único que puedes hacer.

Hay una manera de otorgar permisos a todos sin usar los permisos regulares, que saturará su pantalla (de alguna manera).

Lo que esto significa es que ls --color(de forma predeterminada) siempre se mostrará o:rwXen un fondo de bloque, lo cual es horrible y solo pretende alertar a los usuarios de los permisos incorrectos (cuando son adecuados para usted).

Pero puede lograr fácilmente permisos de escritura universales (o casi universales) en sus archivos mediante el uso de listas de control de acceso .

setfacl -d -m g:sudo:rwX .
setfacl -m g:sudo:rwX .

otorgará permisos rwX a todas las personas en el grupo sudo. Como la mayoría de sus sistemas, tendrá un usuario en el grupo sudo, en particular para los medios extraíbles (y, por lo tanto, los sistemas locales), siempre tendrá acceso a cualquier parte de ese grupo (que es usted). También puede extenderlo a los usuarios, en caso de que esté en algún otro sistema que use ese grupo:

setfacl -d -m g:users:rwX .
setfacl -m g:users:rwX .

El distintivo -d significa que los permisos se propagarán a todos los archivos recién creados (predeterminado). El único inconveniente es que normalmente no puede ver esos permisos, lo que significa que preferiría desactivarlos por completo (por lo tanto, ¿de qué sirve un medio de eliminación si establece permisos que todos pueden eludir de todos modos, ¿verdad?). Es como decir: puede acceder a estos archivos si se hace llamar John. De acuerdo, me llamo John. Bien, tienes acceso ahora.

(Todos pueden asumir la raíz en cada sistema que poseen y, por lo tanto, los permisos del sistema de archivos no significan nada).

ExtFS simplemente no está diseñado para medios extraíbles. No hay sistemas de archivos de Linux que sean realmente útiles en medios extraíbles, pero FAT y NTFS tienen el inconveniente de no admitir realmente enlaces simbólicos y ejecutar indicadores, lo cual es difícil para los repositorios git, por ejemplo. Solo mi opinión aquí.

Solo puede ver su archivo ACL haciendo lo siguiente:

getfacl <file>

Y cuando usted es -l verá:

drwxr-xr-x+ 4 user user 4096 aug 31 03:40 .

El + indica que hay una ACL activa en el archivo (o directorio).

La salida de getfacl será (por ejemplo):

# file: .
# owner: user
# group: user
user::rwx
group::rwx                      #effective:r-x
group:sudo:rwx                  #effective:r-x
mask::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:sudo:rwx
default:mask::rwx
default:other::r-x

No conozco todos los detalles, pero esto debería funcionar. Mientras estés en sudo, puedes hacer cualquier cosa.

Xennex81
fuente
4

No, no puede quitar los permisos de archivo para los sistemas de archivos ext {2,3,4}.

Lo único que puede hacer es configurar todos los archivos con el permiso 777 .

Solo corre:

 chmod a+rwX -R <mountpoint>
H.-Dirk Schmitt
fuente
44
Es mejor hacer eso chmod a+rwX -R <mountpoint>para no dar permisos de ejecución espurios.
vonbrand
@vonbrand right
H.-Dirk Schmitt
pero el Xde chmod a+rwXlas marcas de todos los archivos ejecutables, ¿verdad? ¿¿Eso es bueno??
Becko
3
@becko Te has perdido el punto de los dos comentarios anteriores. Las mayúsculas Xsolo harán que los directorios sean ejecutables (entretenibles) sin hacer que los archivos sean ejecutables; mientras que en minúsculas xhará que todos los archivos y directorios sean ejecutables.
XA21X
0

Por supuesto, los permisos del sistema de archivos son verificados por el controlador del sistema de archivos (módulo) y si tuviera que parchear ese módulo, podría deshabilitar los permisos del sistema de archivos todo lo que desee.

Una vez hice esto para cifs.ko, el módulo 'Samba' (cliente) para el kernel, porque hay algunos errores de samba en los que deberías tener acceso local, y tienes acceso remoto, pero aún así el acceso no está garantizado.

Inhabilité el permiso local para verificar si el usuario local estaba en el grupo (local) del archivo, lo mismo que la opción "noperm", esta vez solo se activó cuando eres miembro del grupo.

Por supuesto, extfs no es exactamente un módulo en el núcleo, pero una nueva bandera sería trivial para agregar.

Xennex81
fuente
No estoy seguro de si estás respondiendo la pregunta o no. Dices que es posible, si fue un módulo, entonces dices que no es un módulo.
Jeff Schaller
Sería posible si el sol bailara en el cielo también. Si supieras algo sobre el núcleo, sabrías que algo que no es un módulo requeriría recompilar todo el núcleo, lo cual es un poco prohibitivo para la gente común, mientras que compilar un módulo es relativamente gratuito. Simplemente expreso el hecho de que no hay nada inherente en Linux que impida que surja tal opción, porque esta limitación también me ha molestado mucho.
Xennex81