Permisos por defecto

Iniciado por Gambinoh, 28 Agosto 2011, 07:30 AM

0 Miembros y 1 Visitante están viendo este tema.

Gambinoh

He leído un tuto que dice:

CitarCuando se crea un archivo, los permisos originales por defecto son 666 y cuando se crea una carpeta, los permisos por defecto son 777. Dichos permisos por defecto pueden modificarse con el comando umask.

7 significa 4 + 2 + 1 o sea: lectura + escritura + ejecución.

Igual es que he entendido mal algo o que el tutorial está desfasado, porque en mi equipo cuando creo una carpeta se le asignan permisos 755 (rwx r-x r-x). ¿Entonces este es el comportamiento por defecto de cualquier carpeta en $HOME?

¿Qué implicaciones tendría poner todas las carpetas de home a rwx r-- r--? Se que el permiso de ejecución en las carpetas implica poder acceder a ellas y eso podría impedir a un demonio acceder a un determinado archivo (me pasó con www-data)...

Por ejemplo en ~/.mozilla se almacena la configuración de mi navegador, ¿entonces si modifico los permisos como he dicho antes puede afectar al funcionamiento de Firefox?




P-Joe

¿Te refieres a que las carpetas de $HOME tuvieran permisos de 744?
Cuando aplicas permisos a las carpetas, lo haces a todos los elementos que estan dentro de ellas si lo haces con la opción recursiva:
chmod 744 -R $HOME
Estos permisos de aquí harían que la los archivos de $HOME solo pudieran ser modificados/ejecutados por el propietario o por el root, y cualquier otro usuario no podría ni ejecutarlo ni modificarlo.
Por lo general unos pocos programas guardan sus archivos de configuración en $HOME, y son archivos concernientes a la configuración del usuario como puede ser la GUI de Ubuntu (Compiz), jdownloader, libreoffice, mozilla, wine... En pocas palabras que los programas no pudieran acceder a estos archivos podría hacer que no te funcionaran.
Creo que es así no lo sé con certeza, cualquier error posteenlo. De todas maneras yo lo dejaría en 755 ;D
¡Saludos!
Ten principios y no finales. // http://www.bitgamia.com/
Intel Core Duo Quad Q9550
Gigabyte EG45M-UD2H (G45 motherboard)
WDC Caviar Green SATA 3 Gb/s IntelliPower 500GB

Gambinoh

Cita de: P-Joe en 28 Agosto 2011, 19:02 PM
Por lo general unos pocos programas guardan sus archivos de configuración en $HOME, y son archivos concernientes a la configuración del usuario como puede ser la GUI de Ubuntu (Compiz), jdownloader, libreoffice, mozilla, wine... En pocas palabras que los programas no pudieran acceder a estos archivos podría hacer que no te funcionaran.

Bueno, lo he comprobado quitando permisos de forma recursiva a ~/.mozilla y todo lo que contiene, luego he ido a Firefox y he cambiado la configuración de varios addons (NoScript y ABP) que tienen carpetas en ~/.mozilla, luego he reiniciado y los cambios se preservan.

Eso significa que Firefox ejecutandose en mi sesion tiene los permisos de acceso de mi usuario, o me he vuelto loco jaja. Molaría que alguien que sepa más nos lo aclare. Lo que sí puedo corroborar por mi expe personal es que el demonio de Apache no puede acceder a una carpeta si está como 744.

De lo anterior deduzco que es un tema de grupos, es decir que el usuario está incluído en varios grupos con lo que extiende sus permisos o algo por el estilo, pero es sólo una suposición.

P-Joe

Yo también creo que sea algo relacionado con los grupos, pero de todas maneras no sé de que te sirve poner $HOME a 744, si tienes algo que quieres que no se pueda ejecutar/modificar en específico simplemente das permisos 744 y te olvidas, no tiene ningun sentido darle a toda la carpeta 744 :)
¡Saludos!
Ten principios y no finales. // http://www.bitgamia.com/
Intel Core Duo Quad Q9550
Gigabyte EG45M-UD2H (G45 motherboard)
WDC Caviar Green SATA 3 Gb/s IntelliPower 500GB

Gambinoh

Cita de: P-Joe en 28 Agosto 2011, 21:05 PM
Yo también creo que sea algo relacionado con los grupos, pero de todas maneras no sé de que te sirve poner $HOME a 744, si tienes algo que quieres que no se pueda ejecutar/modificar en específico simplemente das permisos 744 y te olvidas, no tiene ningun sentido darle a toda la carpeta 744 :)
¡Saludos!

Se cierran rutas de acceso, puede ser una buena idea crear "caminos" y cerrar el paso donde se quiera. Las carpetas serían como puertas de acceso, si soy el único usuario me parece lógico quitar permisos para otros y en lo demas gestionar los grupos de forma adecuada.


P-Joe

Cita de: Gambinoh en 28 Agosto 2011, 22:56 PM
Se cierran rutas de acceso, puede ser una buena idea crear "caminos" y cerrar el paso donde se quiera. Las carpetas serían como puertas de acceso, si soy el único usuario me parece lógico quitar permisos para otros y en lo demas gestionar los grupos de forma adecuada.
¿Quién ha dicho que yo no lo esté? Yo en ese aspecto soy muy cuidadoso, pero no en el $HOME, puesto que no guardo información de mucha relevancia. Yo enfoco mi esfuerzo a directorios que considero muy importantes como /boot, /etc, /bin, /usr, /usr/sbin, /proc, /var/log y alguno más que se me habrá quedado por el camino. Es ahí donde implanto las medidas de seguridad adecuadas y demás, ahí es donde de verdad te pueden hacer daño, y mucho.
¡Saludos!
Ten principios y no finales. // http://www.bitgamia.com/
Intel Core Duo Quad Q9550
Gigabyte EG45M-UD2H (G45 motherboard)
WDC Caviar Green SATA 3 Gb/s IntelliPower 500GB

Foxy Rider

#6
CitarIgual es que he entendido mal algo o que el tutorial está desfasado, porque en mi equipo cuando creo una carpeta se le asignan permisos 755 (rwx r-x r-x). ¿Entonces este es el comportamiento por defecto de cualquier carpeta en $HOME?

Depende del sistema, por ejemplo en FreeBSD sólo se dan permisos rw al usuario y al resto permisos r, nada de permisos de ejecución (salvo que se necesite, sino, está de más )

Citar¿Qué implicaciones tendría poner todas las carpetas de home a rwx r-- r--? Se que el permiso de ejecución en las carpetas implica poder acceder a ellas y eso podría impedir a un demonio acceder a un determinado archivo (me pasó con www-data)...

Si no lo hacés de forma recursiva, nada ... pero si lo hacés de forma recursiva, implicaría poder ejecutar cualquier archivo que pueda ser ejecutable*, independientemente de su extensión y demás.(por eso hay gente que monta el $HOME con noexec)

Lo subrayado no lo termino de entender, o sea, tener permiso de ejecutar, implica permiso de leer ... pero no capto la relación con un daemon, que no necesita leer ficheros con permisos de ejecución (x), sino de lectura (r) ... lo que  podría impedir un buen funcionamiento es el permiso que setees para gente en el grupo y fuera del grupo.

Por que siempre los ficheros tienen un owner, a veces el daemon corre con otro usuario y el developer naturalmente con otro ... *básicamente*

CitarPor ejemplo en ~/.mozilla se almacena la configuración de mi navegador, ¿entonces si modifico los permisos como he dicho antes puede afectar al funcionamiento de Firefox?

Como es para el usuario, sólo necesita permisos rw para tu usuario (grupo y demás es innecesario), el permiso de ejecución, supongo que está de más.


CitarEso significa que Firefox ejecutandose en mi sesion tiene los permisos de acceso de mi usuario, o me he vuelto loco jaja. Molaría que alguien que sepa más nos lo aclare. Lo que sí puedo corroborar por mi expe personal es que el demonio de Apache no puede acceder a una carpeta si está como 744.

Cualquier aplicación que corra bajo un usuario, hereda sus permisos.

CitarDe lo anterior deduzco que es un tema de grupos, es decir que el usuario está incluído en varios grupos con lo que extiende sus permisos o algo por el estilo, pero es sólo una suposición.

Suposición correcta ^^

==

En cuanto a permisos para tu home, dejalo en rw para tu usuario y dependiendo de lo que hagas, si podés, bloqueá el resto (grupo y others)

Pero depende ...

Saludos.

*: Básicamente el interpretador del sistema trata de ver si es elf o algún formato binario aceptado o de última, si es texto, lo toma como comandos de shell. más info -> http://www.linux-tutorial.info/modules.php?name=MContent&pageid=320
http://www.linux.it/~rubini/docs/binfmt/binfmt.html

P.S: lo moví a Unix/Unix-Like por que ya que no es específico a gnu/linux, podemos tratarlo de forma más general al tema, desde ya perdón por los inconvenientes causados !

Gambinoh

#7
No se si esto le servirá a alguien, el caso es que al final he hecho esto.

Mirándolo en un Live CD vi que básicamente se le da a las carpetas rwx r-x r-x y a los archivos rw- r-- r-- así que si sólo tenemos previsto crear un usuario para nuestro sistema GNU/Linux se podrían dejar los permisos de la manera siguiente.

CitarCarpetas: rwx --- --- #chmod g-rwx,o-rwx
Archivos: rw- --- --- #chmod u-x,g-rwx,o-rwx

Al menos es lo que yo he hecho sin tener problemas... lo que también me gustaría decir es que conviene tener mucho cuidado con usar de forma recursiva y con sudo el comando chmod.

PD: Si alguien que sepa más ve un fallo agradecería su consejo.