Newsgroup: it.comp.os.linux.sys
Titolo: Virtual host e permessi

Domandone sui permessi di una macchina che ospita svariati Vhost a cui 
accedono persone diverse (clienti).
Sulla macchina gira apache 2.2, php 5.2 e suphp, in modo tale che 
ciascun virtualhost lavori con le giuste credenziali. Tralasciando le 
differenze di performance tra suphp e fastcgi, sulle quali indegher� a 
tempo debito, la situazione del filesystem � la seguente (a dx i permessi):
/
-- home                            [755]
------- sito1                      [755]
------------- logs                 [750]
------------- 
sito1.it
             [750]
------- sito2                      [755]
------------- logs                 [750]
------------- 
sito2.it
             [750]
------------- 
sottodminio.sito2.it
 [750]
Le directory da sito1 in gi� appartengono all'utente del virtualhost ed 
al suo gruppo. Ciascun utente accede via FTP alla propria home e lavora 
solo sui propri file. Proftpd impedisce di uscire dalla home, ed anche 
se fosse non potrebbe curiosare tra le cose altrui in quanto i permessi 
750 glielo impedirebbero. E tutto funziona alla grande.
Il problema � che l'utente pu� cancellare la dir logs, ed il reload di 
apache conseguente al logrotate mi schianta apache, in quanto sia 
l'ErrorLog che il CustomLog puntano a quella directory!!!
Come risolvereste questa situazione?
Come configurate i vostri server a cui accedono pi� persone a 
smanettarci su?
-- 
g4b0, linux user n. 369000
http://brosulo.net

 ciccia.
Questa sarebbe un ottima idea, ma svanirebbe il concetto di shared 
hosting... ed io shared hosting devo implementare!


 E' un banale grep/sed/find.
Ok, � closed source. Ne scrivo uno e lo pubblico.


 Come risolvereste questa situazione?
Io uso cronolog per ruotare i log, invece di logrotate, e lui si ricrea 
da solo tutta la gerarchia di directory che gli serve quando gli serve 
(permessi permettendo ;).
Bye.

 Ok, é closed source. Ne scrivo uno e lo pubblico.
capirai che closed source...
in prerotate ci metti qualcosa tipo:
if ! [ -d /path/to/logs ]; then
   mkdir /path/to/logs
   chmod NNNN /path/to/logs # se vuoi attribuire permessi particolari
fi
che abbinata alla direttiva "create" ti permette in ogni caso di
trovarti al momento del riavvio del servizio (in postrotate) con una
directory esistente.
-- 
Massimo Bacilieri AKA Crononauta

 directory esistente.
Ora abbino lo script al prerotate.



Ho risolto con uno script in prerotate, in effetti potrebbe pensarci 
anche logrotate...


 Comunque mi sono scritto le mie poche righe di php che fanno
Argh un PHProgrammatrota... :-D
Davide Bianchi potrebbe sottoporti alle peggio torture :-D
;-)



Ma se l'utente di sito1 crea un file tramite php (es un upload), con che 
permessi se lo ritorva sul server? Ci pu� lavorare con FTP?
Anni fa avevo un hosting tramite il quale collegandomi via FTP non 
potevo accedere a file creati mediante php, in quanto appartenenti ad un 
utente differente. Ed era una gran scocciatura!


 Davide Bianchi potrebbe sottoporti alle peggio torture :-D
Ahahahaha, uso il php perché é comodo, in realtá sono sono sysadmin 
nell'animo :) Ma mangio anche carne di maiale e bevo alcolici, vi prego 
non ditelo ai talebani :P
