Consenso all'uso dei cookies

SITO1 -- SITO2 -- Forum1 -- CercaGlobale -- Informativa su Cookie e Privacy


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5
apache e utente www-data
#1
Salve a tutti.
Scusatemi ma ho bisogno di un consiglio.
Ho installato per test in VM un sistema server debian LAMP con apache , e mysql.

Ora il mio problema è : vorrei creare per prova dei siti web che gireranno su apache.

Ho letto che i file in /var/www sono di proprietà di www-data (l'utente che fa girare apache )

Alcuni dicono di settare a 777 i permessi di questa cartella, altri propongono altre soluzioni.
MA non ci ho capito molto.
PEr cortesia mi potete spiegare come fare per realizzare un semplice nuovo sito su apache (non tutto) ma solamente la questione dei permessi della cartella del sito e dei file all'interno.
Ossia, vorrei capire come impostare il tutto in modo che quando lo mettessi su un server vero in produzione giri con la sicurezza prevista per il web server.

La documentazione la trovo astrusa, difficile per apache.

Sono diversi anni che utilizzo ubuntu ma la questione di apache e www-data e i permessi dei files di un sito non li ho mai capiti.... scusatemi.

Attenzione: a confondermi ancora di piu ho trovato questa guida:
http://www.informaticanelreale.it/server...ntu-linux/
Qui dice che bisogna diventare root . ma non era www-data l'utente con cui bisogna lavorare ??? bo??

Grazie a che mi illuminerà.
Mauro
Cita messaggio
Grazie da:
#2
copia nella directory /var/www/ la cartella che conterra i vari files e sottocartelle del sito web (per copiare questi file devi essere root e i files devono avere i permessi di lettura per tutti). all'interno della cartella contenente il sito devi avere un file nominato "index.html" che apache cercherà anche se non lo inserisci esplicitamente nell'url. questo file che generalmente visualizza la home page di un sito conterrà i vari link ad altre pagine e/o collegamenti ad immagini, testo o altro. potrai raggiungere questa pagina del sito digitando nella barra del browser:
Codice:
http://localhost/nomecartellasito/index.html
ricordati di inserire link relativi ai vari contenuti o pagine da visitare e non assoluti. cioè devi considerare il file index.html come radice. Per es. se vuoi fare un collegamento dalla home ad un'altra pagina del sito che chiameremo pagina2.html contenuta insieme alle sue immagini, testi, etc. nella sottocartella 2 il link dovrà essere:
Codice:
./2/pagina2.html
e non
Codice:
/var/www/nomecartellasito/2/pagina2.html
mentre nella pagina 2.html il link per tornare alla home:
Codice:
../index.html
i 2 punti indicano ad apache di salire di un livello rispetto alla posizione attuale.
Linux User # 207701 - Non ho particolari talenti. Sono soltanto appassionatamente curioso - Albert Einstein
Cita messaggio
Grazie da:
#3
Ciao Mauro,
allora in breve, dovrebbe essere tutto di www-data.
Se così non fosse
Codice:
cd /var/www
Codice:
chown -R www-data.www-data html/

Con i permessi 777 non avresti problemi a fare quello che vuoi ... ma anche gli altri Smile
In linea generale dovrebbero essere:
cartelle 755
files       644
files più "delicati" 640

Se vuoi leggi anche questo
Ciao
just my two cents
A volte ritorna on line il mio blog
Cita messaggio
Grazie da:
#4
chown -R www-data.www-data html/

Chown significa cambia propretario ?..
-R significa ivorsivamente anche ai files contenuti nella cartella html/ ?.
www-data.www-data oppure www-data:ww-data (utente www-data del gr uppo www-data ??????)
/html che cartella è ??? Quella che contiene i files del sito o tutti i vari siti sono dentro a /html ?..
Cita messaggio
Grazie da:
#5
il comando corretto è
Codice:
sudo chown -R www-data:www-data html/
Cambia ricorsivamente proprietario e gruppo a tutti i files e cartelle contenuti nella directory html.
In quest'ultima directory inserirai i files del sito ( o le cartelle dei siti se ne hai piu di uno)
Linux User # 207701 - Non ho particolari talenti. Sono soltanto appassionatamente curioso - Albert Einstein
Cita messaggio
Grazie da:
#6
Ciao a tutti,
allora come ha detto giustamente m3nhir il comando chown usa come separatore ":" ma, come in questo caso, se proprietario e gruppo non hanno un "." nel nome si può usare anche il punto come separatore (funziona comunque, prova).

Di default in apache /var/www/html e www-data sono rispettivamente la DocumentRoot (dove devono stare i contenuti del sito, se è uno solo) e il gruppo, tieni presente che possono variare a seconda delle distro.
Quindi, se non fai configurazioni particolari usa quelli.

Poi sulla proprietà dei files ci sono diverse opinioni (creare gruppi o inserire l'utente nel gruppo www-data) ma sei su vm quindi non dovresti avere problemi a fare tutte le prove che vuoi (prova pure via ssh e ftp).

Per i permessi, invece, è evidente che settare a 777 sia sbagliato (sempre).

Ciao a tutti
just my two cents
A volte ritorna on line il mio blog
Cita messaggio
Grazie da:
#7
Citazione:allora come ha detto giustamente m3nhir il comando chown usa come separatore ":" ma, come in questo caso, se proprietario e gruppo non hanno un "." nel nome si può usare anche il punto come separatore (funziona comunque, prova).
Non lo sapevo ma ci credo. Buono a sapersi. At
Per quel che riguarda i permessi, Da diversi anni uso un database mysql con apache e php. Ho sempre copiato i files da usare per la gestione e consultazione del database senza modificare il proprietario (root, perchè un utente normale non puo scrivere all'interno della DocumentRoot a meno di non modificarne i permessi). i permessi sui files sono a 644 di default e tutto ha sempre funzionato senza intoppi.
Linux User # 207701 - Non ho particolari talenti. Sono soltanto appassionatamente curioso - Albert Einstein
Cita messaggio
Grazie da:
#8
Scusate ho un dubbio:
Se setto www-data come gruppo a /var/www/html e imposto il mio utente myuser come proprietario per la stessa cartella potrei aggiungere i files all'interno usando SFTP via ssh con putty da windows verso il server web apache linux.
Devo aggiungere myuser al gruppo secondario www-data ?
Devo dare il permesso di scrittura al gruppo www-data nella var/www/html nel caso in cui una pagina php si occupi di salvare un file inviato tramite il form di una pagina e conseguentemente il codice php salva questo file all'interno sempre di /var/www/html ?

Praticamente ha senso impostare il possesso di /var/www/html al mio utente myuser per poterne aggiornare il contenuto tramite ftp o SFTP via ssh e settare il gruppo a www-data?

Inoltre come detto sopra nel caso di slvataggio di un file inviato da 1 form html e gestione del salvataggio bella cartella /var/www/html devo setrare il permesso 7 comprendente la scrittura al gruppo www-data ? (Ricordo proprietario di /var/www/html settato a myuser con vaore 7 rwx e gruppo www-data .).
Devo comunque aggiungere myuser a gruppo www-data o funziona lo stesso con il settaggio sopra esposto?
Cita messaggio
Grazie da:


Vai al forum:


Utenti che stanno guardando questa discussione: 1 Ospite(i)