Linux en Espanol
 
Cambiar permisos dierectorios linux (tema #25016)
Publicar nuevo tema  Responder al tema    Foros de discusión -> Linux General
Autor Mensaje
josealvarobr
Forista
Registrado: 2014-06-17
Mensajes: 1

Publicado: 2014-06-17 09:50:25    Asunto: Cambiar permisos dierectorios linux

Hola buenas tardes, tengo una duda que por mas vueltas que le doy no consigo solucionar, tengo una web en joomla y tengo todos los permisos en 777, me han recomendado que los directorios deben estar en 755 y los archivos en 644, y son much?simas carpetas, si utilizo en comando chmod me cambia todos los permisos de directorios y archivos.
Mi pregunta es, hay alguna forma de cambiar todos los permisos de los directorios y subdirectorios sin que afecte a los archivos que tienen dentro. muchas gracias :?:
rafaxdrake
Forista


Registrado: 2004-02-21
Mensajes: 3928

Publicado: 2014-06-17 10:25:27    Asunto:

Si chmod te cambia todos los archivos es porque debes pasarle recursividad con -r o -R porque si no solo cambiar?a un fichero.
miguelgf
Forista


Registrado: 2006-12-28
Mensajes: 621

Publicado: 2014-06-17 16:36:55    Asunto:

Hola.

No existe un par?metro de chmod que te permita hacer recursivamente lo que quieres pero s?lo para carpetas. Es decir, no hay algo como:
[code:1:8b4cfc791d]chmod -r --directory_inexistente 755 .....[/code:1:8b4cfc791d]
La mejor soluci?n que veo es usar find que s? permite buscar recursivamente s?lo carpetas y decirle a find que para cada carpeta encontrada haga un chmod
[code:1:8b4cfc791d]find ./ -type d -exec chmod 755 '{}' ';'[/code:1:8b4cfc791d]
Y luego repite para los archivos:
[code:1:8b4cfc791d]find ./ -type f -exec chmod 644 '{}' ';'[/code:1:8b4cfc791d]

Otra cosa es que no veo yo buena recomendaci?n para joomla esos valores que te han propuesto. Joomla ser? servido por un apache o cualquier otro servidor de p?ginas web, como lighttpd, nginx o el que sea. Este es un punto de ataque a tu servidor ya que es un punto de acceso desde la calle. Si alguien consigue romper la seguridad de tu servidor podr?a encontrarse con un terminal abierto por el usuario que ejecuta apache (www-data en muchas distros) con acceso a escribir en todas las carpetas servidas por joomla. Eso le dar?a acceso a cambiar todo lo que quisiera de tu p?gina e incluso a saber el usuario y contrase?a con el que conectas a la base de datos poniendo otro servidor en peligro.
Por ello el usuario que ejecuta apache no debe tener acceso en escritura a nada de lo que sirve a la calle. Eso, salvo que expresamente joomla necesita una carpeta con acceso en escritura para alg?n prop?sito concreto. En ese caso s?lo deber?a tener escritura para esa carpeta.
Esos valores de permisos son los que se configuran inicialmente mientras se configura el joomla para que los primeros errores de configuraci?n, base de datos, etc., no se mezclen con errores de autorizaci?n. Posteriormente esos permisos se restringen antes de pasar a producci?n.

Saludos.





La marca registrada Linux (R) se usa siguiendo la sublicensia obtenida del "Linux Mark Institute",
el LICENCIATARIO exclusivo de Linus Torvalds, propietario de la marca en EEUU y otros países
The registered trademark Linux (R) is used pursuant to a sublicense from the Linux Mark Institute,
the exclusive LICENSEE of Linus Torvalds, owner of the mark in the U.S. and other countries