Cómo administrar permisos FTP de archivos en Linux

Muchas veces, cuando instalamos soluciones como WordPress, Joomla o alguna otra, observamos que requieren determinados permisos sobre determinadas carpetas para que trabajen correctamente.

Por ejemplo, en WordPress, la carpeta uploads -que está dentro de wp-content- debe tener permisos de escritura para que puedas subir imágenes y adjuntarlas a un artículo como este. Pasa algo parecido con Magento, pero lo hace desde el directorio donde guarda la sesiones de nuestros clientes.

Modificar los permisos es bastante simple; sin embargo, nos obliga a que los entendamos muy bien. Con esto nos aseguramos no darle a todo el mundo permisos de escritura sobre un directorio crítico de nuestro sitio Web o Solución.

Así que vamos a ver todo en detalle. Los permisos se definen con tres números que van desde el 0 hasta el 7. Por ejemplo: 755 o 644.

Estos números representan un grupo diferente de permisos que pueden ser los siguientes:

  • Usuario (user): este es el propietario del archivo o de la carpeta, por lo general se refiere a aquel que creó el archivo o que subió una carpeta.
  • Grupo: Aquí se define el grupo al cual pertenece el usuario. Si tenés una cuenta de Webhosting que te permita crear varios usuarios, todos esos usuarios estarán dentro de un grupo.
  • Para todos: es el grupo donde se incluyen todos los usuarios, incluso aquellos que te visitan a través de Internet.

Ahora bien, estos tres grupo, tienen permisos definidos por números que permiten o impiden hacer determinadas acciones. Veamos:

  • Leer: un archivo puede ser leído, no solo por el creador del archivo, sino también por otros usuarios. También puede ser accedido de manera anónima por Internet. Un archivo que no tiene permisos de lectura solo puede ser visto por su creador.
  • Escribir: la habilidad para escribir, editar, renombrar o borrar un archivo dentro de una carpeta.
  • Ejecutar: es el otro nivel de permisos que nos habilita para ejecutar un archivo. Esto es muy interesante entenderlo porque un archivo PHP es un script que necesita ser ejecutado, no es algo que simplemente se lee.

Estas tres acciones, como dije anteriormente, están representadas por un valor numerico. Ese valor para lectura comienza en 4,  para escribir comienza en 2 y para ejecutar comienza en 1. Combinando estos números. generamos un valor de 0 a 7 que definirá el tipo de permisos. Veamos algunos ejemplos:

Un archivo que no puede ser leído, tocado o modificado -ni siquiera por el administrador-, tendrá un permiso 000. Otro que puede ser leído por cualquier persona tendrá un valor de 444, mientras que un archivo que tiene un valor de permisos 777 puede ser leído, ejecutado o escrito por cualquiera.

Para que se entienda aún más, vean la siguiente captura de Filezilla cuando hago click derecho sobre un archivo y voy a permisos:

Capture

Para este archivo, el valor es 644. Esto quiere decir que el administrador puede leerlo y escribirlo, pero no ejecutarlo. Los usuarios que estén dentro del mismo grupo que el usuario solo pueden leerlo pero no modificarlo (mucho menos, ejecutarlo). Por último, el acceso público está permitido, pero solo para leerlo o descargarlo.

Otro ejemplo o caso común es el 755:

capture32

En este caso, el propietario del archivo puede leerlo, escribirlo y ejecutarlo; los que están dentro del mismo grupo puede leerlo y ejecutarlo pero no escribirlo, mientras que los visitantes externos y el público puede leerlo y ejecutarlo, pero no escribirlo. Esta última es la ideal para los sitios Web, ya que los archivos HTML o PHP deberían poder ser leídos y ejecutados para su correcta lectura. Lo mismo pasa con las imágenes para que puedan visualizarse.

Espero que esta información les haya sido de utilidad! Muy pronto veremos de qué modo se asignan permisos, tanto en un WebHosting como en un Cloud Server.

Si tenés algún comentario o duda, podés registrarte y escribirnos aquí abajo, o bien contactarte con Soporte Técnico desde el área de clientes.

 

Facebooktwittergoogle_pluslinkedinFacebooktwittergoogle_pluslinkedin

Deja un comentario