Joomla.it Forum
Non solo Joomla... => Sezione dedicata ai Server => : sparviero 24 Apr 2009, 17:55:10
-
Ciao a tutti. Scusate la genericità della domanda.
In un Linux LAMP ospito più joomla riferiti ad un unico db, alcuni sono miei, altri di ospiti.
Mettiamo spesso l'utente di Apache con privilegi in scrittura su tutti gli alberi delle direttrici dei siti. In un nostro sito ho installato un plugin che permette di operare in shell e altre operazioni di file system. Da lì, pur essendo www-data come gli altri, vedo e sono in grado di modificare tutti gli altri. Non c'è limitazione al mio albero della direttrice. La stessa cosa accadrebbe agli altri se facessero la stessa cosa, fortuna che non lo sanno o non lo fanno.
Sapete qual è il modo in cui un hosting fatto per bene protegge i dati dei suoi diversi utenti ? Non riesco a trovare soluzioni accettabili se non con più istanze di apache, più gabbie chroot, più macchine virtuali.
Tuttavia mi sembra strano che soluzioni monoapache non funzionino e continuo a propendere per un mio errore di base.
Ciao.
-
utente di apache?
forse intendi utenti per l'ftp? in questo caso basta crearne di diversi, ognuno coi permessi nella sua cartella.
stessa cosa se intendi utenti del db: ogni utente ha i permessi solo sul suo db.
non capisco...
-
Ciao. Grazie. Non intendevo ftp.
Volevo dire che l'utente di apache (www-data) ha privilegi di scrittura su tutti i siti utente anche se appartengono ad un utente particolare.
Certi plugin (es. php shell) se installati permettono di lavorare in browsing sull'albero delle direttrici della macchina o di entrare in shell. Possono essere installati direttamente da client, senza alcun intervento centrale, senza che ne sappiamo niente.
Essendo eseguiti dall'utente apache (www-data) che può scrivere su tutti i siti, chi installa il plugin sul suo sito eseguendolo può modificare tutti i siti degli altri. E' quanto abbiamo verificato. Per cui ci ponevamo la domanda se non fosse opportuno avere più istanze di apache.
-
ciao sparviero,
no, il tuo è un bel problema, perchè non hai limitato i permessi di lettura ( e meglio non immaginare altro ) sul filesystem, che dovrebbe essere offlimits per gli utenti.
Come sono configurati i tuoi Vhost?
<Directory />
AllowOverride None
Options None
order deny,allow
deny from all
</Directory>
<Directory /home/httpd/html>
Options Indexes SymLinksIfOwnerMatch
AllowOverride None
order deny,allow
allow from all
</Directory>
<Directory /home/*/public_html>
Options Indexes SymLinksIfOwnerMatch
AllowOverride None
order deny,allow
allow from all
</Directory>
<VirtualHost *:80>
ServerName miosito.tld
DocumentRoot /var/www/miosito.tld/httpdocs
ServerAlias miosito.tld www.miosito.tld
</VirtualHost>
come hai impostato la DocumentRoot?
-
Ciao Odino. Grazie.
Per caso hai provato a caricare quel plugin ?
Comunque imposti i diritti o dando il sito 775 ad un utente con www-data che lo contiene come gruppo o 755 a www-data direttamente, senza creare un utente di filesystem, con quel plugin, nella pagina web, sono www-data e posso toccare i siti altrui e tutto quello che è di www-data, configurazione di apache compresa.
Quindi mi chiedevo cosa facessero quelli bravi che fanno hosting industriale: un apache per utente ? La mia esposizione è utente interno verso altro utente interno oltre alla normale esposizione verso attacchi esterni.
Ho alcuni virtual host per i domini che non sono il mio, ma molti si riferiscono al mio dominio e tutti partono da var/www , apache è unico. La configurazione nella sostanza è identica alla tua.
Ciao.
-
Ciao a tutti. Scusate la genericità della domanda.
In un Linux LAMP ospito più joomla riferiti ad un unico db, alcuni sono miei, altri di ospiti.
Mettiamo spesso l'utente di Apache con privilegi in scrittura su tutti gli alberi delle direttrici dei siti. In un nostro sito ho installato un plugin che permette di operare in shell e altre operazioni di file system. Da lì, pur essendo www-data come gli altri, vedo e sono in grado di modificare tutti gli altri. Non c'è limitazione al mio albero della direttrice. La stessa cosa accadrebbe agli altri se facessero la stessa cosa, fortuna che non lo sanno o non lo fanno.
Sapete qual è il modo in cui un hosting fatto per bene protegge i dati dei suoi diversi utenti ? Non riesco a trovare soluzioni accettabili se non con più istanze di apache, più gabbie chroot, più macchine virtuali.
Tuttavia mi sembra strano che soluzioni monoapache non funzionino e continuo a propendere per un mio errore di base.
Ciao.
suphp
-
kOnan,
mi sa che ci hai dato l'aiuto definitivo anche se laconico. Studio suphp che non conoscevo e che sembra essere esattamente quello che cerchiamo.
Grazie.