Dudas permisos web apache php/var/www/html

¿Algo falla o no sabes como funciona? Pide ayuda aquí!
Responder
CarlosLSev
Pi Alpha
Pi Alpha
Mensajes: 17
Registrado: 29 Dic 2020, 15:41
Agradecido: 0
Agradecimiento recibido: 0

:fumando :borracho

Hola un saludo ante todo.
Llevo unos días con un problema y ya no se cómo proceder.
Raspberry Pi B con Buster 10 (Raspberry Pi OS)
Os cuento cómo he configurado
Usuario pi
Primero el ftp
sudo apt-get install vsftpd
sudo nano /etc/vsftpd.conf
Descomentamos las siguientes líneas para permitir la escritura de archivos a los usuarios de la Raspberry Pi.
local_enable=YES
write_enable=YES
Luego ejecuto
sudo adduser pi www-data
sudo adduser www-data pi
sudo chown -R pi /var/www/html/web/
Y así doy permisos al usar pi almftp
Por último reiniciamos el servicio.
sudo service vsftpd restart

He instalado pihole y me funciona bien ya llevo mucho tiempo con el funcionado.
Ahora quiero poner una plantilla de una web sus requisitos son apache y php5+ bajo Linux. Básicamente una web.
Es para crear una web de una estación meteorológica.
El software que lo gestiona es CumulusMX.
Y como es un programa de Windows hace falta el emulador mono.
Tras instalar mono y extraer y ejecutarlo CD /home/pi/CumulusMx
sudo mono CumulusMX.exe
Puedo acceder a su interfaz gráfica y configurarlo.
Ahora viene mi problema
Cumulus genera unos ficheros con los datos meteorológicos tal que asi
En /home/pi/CumulusMX/web/ fichero1...
El propio cumulus por FTP lo manda a la raíz de nuestra plantilla y así la web muestra los datos actualizados.
/var/www/html/web/website
El problema es que no consigo por FTP que me envíe los ficheros y estén actualizados, ya que los veo en el FTP o la web no carga bien por falta de permisos. O medio va una cosa o la otra nunca las 2 a la vez
De hecho si ejecutó
sudo find /var/www/ -type d -exec chmod 755 {} \;
sudo find /var/www/ -type f -exec chmod 644 {} \;
La web carga y salen los datos actualizados, pero ya no actualiza más.
Comando probados
sudo chmod -R ugo+rw /var/www/html/
sudo chown -R pi /var/www/html/web/
sudo chmod -R 770 /var/www
Y muchos más que ni apunte....
También cree otro usuario ftppi
sudo adduser ftppi
Y lo hice root
sudo adduser ftppi sudo


sudo adduser ftppi www-data
sudo adduser www-data ftppi
sudo chown -R ftppi /var/www/html/web

Y le di permisos y me logeaba desde el cliente ftp
Y no me deja modificar nada por fpt


Mi problema principal es saber que permisos debería dar en /var/www/html/web/mi web y en el FTP para que funcione todo.

Está claro que algo tengo que hacer mal.
¿Es posible que pihole y un servidor web apache/php sean incompatibles en la misma Raspberry?
Cualquier ayuda sera bien recibida
Última edición por CarlosLSev el 29 Dic 2020, 16:51, editado 1 vez en total.
Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

¡Uf! menudo lío tienes.
Creo que algunos comandos los estás usando de forma incorrecta, o pensando que funcionan de otra forma.
CarlosLSev escribió: 29 Dic 2020, 16:51 Tras instalar mono y extraer y ejecutarlo CD /home/pi/CumulusMx
sudo mono CumulusMX.exe
Estás ejecutando el programa como root en el homedir de pi
Todo lo que ese programa genere lo hará con el propietario root
Seguramente no sea necesario ejecutar ese programa como root
CarlosLSev escribió: 29 Dic 2020, 16:51 Cumulus genera unos ficheros con los datos meteorológicos tal que asi
En /home/pi/CumulusMX/web/ fichero1...
Como te decía antes, esos archivos seguramente sean del propietario root
CarlosLSev escribió: 29 Dic 2020, 16:51 De hecho si ejecutó
sudo find /var/www/ -type d -exec chmod 755 {} \;
sudo find /var/www/ -type f -exec chmod 644 {} \;
No confundas los permisos con los propietarios.
Quizá el propietario debería ser el servidor web y el grupo debería ser el servidor FTP.
Y en tal caso los permisos sería 775 y 664
CarlosLSev escribió: 29 Dic 2020, 16:51 Y lo hice root
sudo adduser ftppi sudo
No creo que eso signifique "hacerlo root" :-D
O metes al usuario en el grupo sudo (si existe) o editas el sudoers (visudo)
CarlosLSev escribió: 29 Dic 2020, 16:51 ¿Es posible que pihole y un servidor web apache/php sean incompatibles en la misma Raspberry?
Si, pero tienes que tener claro qué usuarios ejecutan los programas y qué permisos requiere cada uno de esos usuarios
CarlosLSev
Pi Alpha
Pi Alpha
Mensajes: 17
Registrado: 29 Dic 2020, 15:41
Agradecido: 0
Agradecimiento recibido: 0

Finalmente solucionado con sudo chmod -R ugo+rw /var/www/html/
Y accediendo por su sftp en vez de ftp

Enviado desde mi M2007J20CG mediante Tapatalk

Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

CarlosLSev escribió: 10 Ene 2021, 03:11 sudo chmod -R ugo+rw /var/www/html/
Darle permisos de todo a todos es como quitar los permisos.
Es como decir "ya puedo entrar en mi casa porque he quitado la cerradura" xD

Insisto, debes saber qué usuario y qué grupo van a acceder al directorio /var/www/html (por lo general, www-data)
Y una vez que has asignado los propietarios correctos, etonces asignarás los permisos correctos (775 para directorios, 664 para archivos) de forma que puedan acceder el usuario y el grupo.
Y el resto de usuarios, simplemente los añades al grupo que tiene acceso, ¡así de fácil!
CarlosLSev
Pi Alpha
Pi Alpha
Mensajes: 17
Registrado: 29 Dic 2020, 15:41
Agradecido: 0
Agradecimiento recibido: 0

Cuál sería el comando para asignar a carpetas 755 y archivos 644?


Enviado desde mi M2007J20CG mediante Tapatalk

Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Insisto en que primero debes saber a quién le asignas los permisos 775 y 664

1. Asignar propietario www-data y grupo www-data:
sudo chown www-data:www-data /var/www/html -R

2. Asignar permisos RWX (directorios) y RW (archivos) a www-data
sudo find /var/www/html -type d -exec chmod 775 {} \;
sudo find /var/www/html -type f -exec chmod 6645 {} \;

Insisto en que hay que entender la base, saber qué estamos haciendo y saber cómo funcioan los propietarios y los permisos en linux.
Te guste o no, estás en un sistema linux y necesitas entenderlo.
linux-introduction-file-permissions-4.gif
OzXZ6.png
9fEAm.png
CarlosLSev
Pi Alpha
Pi Alpha
Mensajes: 17
Registrado: 29 Dic 2020, 15:41
Agradecido: 0
Agradecimiento recibido: 0

Veamos es una Raspberry con un servidor Apache para alojar una web.
El problema era que al acceder por FTP no me dejaba subir cosas, si modificaba permisos ya podía subir por FTP, pero la web no cargaba imágenes. Y si lo cambiaba pasaba al revés. Lo solucione entrando por sftp en vez de FTP.
Lo que quiero saber es que comando debería usar para dicha carpeta que no esté mal hecho. Simplemente que los usuarios públicos vean bien la web y yo pueda modificarla por sftp y no tenga algo muy mal hecho.

Enviado desde mi M2007J20CG mediante Tapatalk

Avatar de Usuario
egrueda
Pi God
Pi God
Mensajes: 3426
Registrado: 10 Feb 2017, 19:31
Agradecido: 7 veces
Agradecimiento recibido: 269 veces

Para que el servidor web pueda leer y procesar los archivos de la web, el usuario www-data tiene que tener permisos sobre los directorios (rwx) y sobre los archivos (rw)

Si tú quieres acceder con tu nombre de usuario (¿pi?) entonces lo más habitual es hacer lo siguiente:
- añades tu usuario al grupo www-data
- asignas permisos al grupo www-data en el directorio web

Yo lo haría de esta manera:

Código: Seleccionar todo

sudo usermod -a -G www-data pi
sudo chown www-data:www-data /var/www/html -R
sudo find /var/www/html -type d -exec chmod 775 {} \;
sudo find /var/www/html -type f -exec chmod 6645 {} \;
O sea:
- meto el usuario pi en el grupo www-data
- asigno el propietario www-data y el grupo www-data al directorio html
- asigno permisos para el propietario y para el grupo, tanto para directorios (775) como para archivos (664)

De esta forma el usuario pi tiene acceso a los archivos de html, igual que el usuario www-data porque pertenece al grupo www-data
CarlosLSev
Pi Alpha
Pi Alpha
Mensajes: 17
Registrado: 29 Dic 2020, 15:41
Agradecido: 0
Agradecimiento recibido: 0

Gracias!!

Enviado desde mi M2007J20CG mediante Tapatalk

CarlosLSev
Pi Alpha
Pi Alpha
Mensajes: 17
Registrado: 29 Dic 2020, 15:41
Agradecido: 0
Agradecimiento recibido: 0

Por cierto es válido tmb si se trata de un vps con Ubuntu 20.04?

Enviado desde mi M2007J20CG mediante Tapatalk

Responder