Más preguntas sobre permisos de Linux

Más preguntas sobre permisos de Linux

Leí innumerables artículos sobre el tema y busqué todas las preguntas y respuestas que pude encontrar sin suerte. Poco a poco me estoy volviendo loco, así que recurro a ustedes porque sé que la respuesta a mi pregunta probablemente sea simple.

En mi servidor web tengo dos usuarios y dos grupos. Los usuarios necesitan leer y escribir en la misma área. No una sola carpeta, sino una compleja red de carpetas.

>> groups user_1
      popuser psaserv psacln
>> groups user_2
      psacln popuser psaserv

Estos no son usuarios reales, por lo que no tienen archivos .bashrc. Cuando cada uno de los usuarios crea un directorio, los permisos se ven exactamente como esperaba:

drwxr-xr-x 2 user_1 popuser 4096 Apr 30 20:47 folder_1
drwxr-xr-x 2 user_2 psacln  4096 Apr 30 20:49 folder_2

Pero una vez que uno de los dos usuarios crea la carpeta, el otro no puede escribir ningún archivo en ella.

Si hago chmod 777, entonces, por supuesto, ambos pueden escribir.

gato /etc/grupo

popuser:x:31:user_1,psaserv,user_2
psacln:x:505:user_2,user_1,psaserv

También es inusual que cuando se escribe un archivo en el grupo, los permisos parezcan muy restrictivos:

-rw-r--r-- 1 user_2 psacln 0 Apr 30 21:15 some_file.ext

Aunque tal vez eso sea lo esperado.

De todos modos, para resumir y aclarar mi pregunta de dos partes:

1) How can I make both users access files and folders from each other, given their group differences?
2) How can I set the default permissions on new files so they inherit the folder permissions?

(2) Intenté agregar umask 022 en mi archivo ~/.bashrc para mi usuario root, pero no hizo nada. No estoy seguro de dónde colocar eso para estos "usuarios" que no tienen directorios personales.

Lo siento, sé que preguntas como esta pueden parecer redundantes para los expertos en usuarios de Linux. Buscar es difícil cuando ni siquiera sé lo que estoy buscando.

Muchas gracias, como siempre.

[Estoy en centOS]

Respuesta1

1) ¿Cómo puedo hacer que ambos usuarios accedan a archivos y carpetas entre sí, dadas las diferencias de grupo?

Una forma es dar a los directorios un grupo que los usuarios tengan en común.

  chgrp psaserv folder1 folder2
  chmod g+w  folder1 folder2

2) ¿Cómo puedo configurar los permisos predeterminados en archivos nuevos para que hereden los permisos de la carpeta?

Utilice el bit "establecer ID de grupo".

  chmod g+s folder1 folder2

No puede heredar los permisos rwx, configure la máscara de usuario.


Intenté agregar umask 022 en mi archivo ~/.bashrc para mi usuario root, pero no hizo nada. No estoy seguro de dónde colocar eso para estos "usuarios" que no tienen directorios personales.

Ha dispuesto que algún proceso esté utilizando esos identificadores de usuario. Debe hacer arreglos para que ese proceso establezca su umask en 022. La forma de hacerlo depende del proceso que haya organizado para hacerlo. Quizás uses sudo, quizás sea un servidor web, quizás sea otra cosa. A menos que lo explique, no es realmente posible brindar consejos específicos y detallados.

Respuesta2

Si desea que los miembros del grupo puedan escribir en los archivos nuevos creados por sus usuarios de forma predeterminada, debe modificar la máscara de usuario a algo distinto de 022. Si está de acuerdo con las implicaciones de seguridad, establezca la máscara de usuario en 002 (para ver ejemplos sobre dónde establecer una máscara, verhttps://stackoverflow.com/questions/10220531/how-to-set-system-wide-umask).

Umask

Los permisos de archivo predeterminados en archivos y directorios recién creados son un permiso estándar ( rw-rw-rwpara archivos, rwxrwxrwxpara directorios) que resta la configuración actual de umask. Una configuración de umask de 000 mantendría los permisos estándar, mientras que una configuración de 777 eliminaría todos los permisos.

Los tres números en la umask representan los permisos de usuario, grupo y cualquier persona, respectivamente. El número representa tres dígitos binarios para eliminar un permiso específico o no.

d - rwx
-------
0 - 000 (rwx)
1 - 001 (rw-)
2 - 010 (r-x)
3 - 011 (r--)
4 - 100 (-wx)
5 - 101 (-w-)
6 - 110 (--x)
7 - 111 (---)

Para calcular qué permisos le habrá otorgado un nuevo archivo a una determinada umask, comience con el permiso predeterminado y reste la umask.

orig    rwx rwx rwx (777, default directory permission)
umask   000 010 010 (022)
result  rwx r-x r-x (755)

orig   rw- rw- rw- (666, default file permission)
umask  000 010 010 (022)
result rw- r-- r-- (644)

orig   rwx rwx rwx (777, default directory permission)
umask  000 000 010 (002)
result rwx rwx r-x (775)

orig   rw- rw- rw- (666, default file permission)
umask  000 000 010 (002)
result rw- rw- r-- (664)

información relacionada