Establecer permisos mínimos a un sitio web
Siempre que explico los permisos de Linux a mis alumnos les insisto en que siempre han de escoger los mínimos imprescindibles para que User, Group y Others puedan hacer sólo lo que deben.
En cambio es una práctica muy habitual en entornos Web basados en Linux/Apache (lamp), hacer un chmod -R 777 /var/www/sitio:
chmod -R 777 /var/www/sitio
En entornos de desarrollo puede pasar, pero en un servidor en producción es una animalada.
Si alguna vez te encuentras en esta situación en lugar de dar 777, podrías al menos dar un 755, lo de entrar en tema de “owners” seria para otro articulo.
Con 755 estableces que Group y Others sólo lean y ejecuten, lo necesario para acceder a un sitio web y ejecutar un script (PHP en mi caso).
chmod -R 777 /var/www/sitio
Ahora bien, la naturaleza de este articulo surge en mi mente debido a que como sabréis ando migrando de versión PHP a la actual, lo que me esta llevando a cambiar de versión de Joomla, lo que me esta dejando dormir pocas horas.
He descargado bases de datos y archivos del servidor remoto a mi máquina local de desarrollo, y me dispongo a reproducir el sitio en local antes de acometer la migración en real.
Evidentemente “problemas”, entre comillas, con permisos.
Aunque sea un entorno puro de desarrollo, no me da la gana de establecer recursivamente todo a 777 (full access to everybody, a tutti plen).