Newsgroup: it.comp.sicurezza.unix
Titolo: Apache e PHP. Bloccare le cartelle

Ho us server Web con diversi domigni configurati.
Gli utenti hanno accesso ftp e possono uploadare qualsiasi file (anche
PHP...arghhhh).
Come posso impedirgli di accedere a file di altri utenti.
es.
[cartella home accessibile da httpd i rwx]
drwxrwxrwx    2 httpd    httpd        4096 giu 11 13:56  prova1
    |__
            -rw-r-xr-x    5 httpd    httpd        4096 lug  6  16:26
index.php
drwxrwxrwx    2 httpd    httpd        4096 giu 11 13:56  prova2
    |__
           -rw-r-xr-x    5 httpd    httpd        4096 lug  6  16:26
index.php
Come posso fermare gli script che cercano di accere ai file del 2° sito
lanciati dal primo??? Solamente settando i permessi come 755 ??? E se uno ha
bisogno di scrivere su dei file?? (e quindi ha bisogno di un 666???)Cosě
diventa insicuro....perň.... (sarebbe suff. segnalarlo....)
Cerco perň una soluzione piů sicura in generale (tipo CHROOT.....oltre il
quale non si puň scendere...)
GRAZIE mille
Kamy

 easily.
3. User "open_basedir"
Set it to (together):
a) User's dir
b) public include dir
Now your users wont be able to snoop into others dirs
4. Do not use "sendmail" or similar program to send mail from php (and
 certainly do not put sendmail binary into your trusted path). Use
 sockets based php email class (available on the net).
Using these techniques, you can get reasonably safe mod_php
installation.
Kris
*************************************************************+
ciao
Buttha

 wrote in message
news:3b49809f.12224177@localhost...


riusciresti a spiegarmela ........
Te la riesce a spiegare google:
apache chroot
e trovi tutti gli how-to che ti servono.
hola
Buttha

 apache chroot
GRAZIE........
BYE BYE
KAMY

Buttha wrote:

GRAZIE THX
KAMY

 Come posso impedirgli di accedere a file di altri utenti.
Abilita il SUEXEC di Apache e fai in modo che gli utenti eseguano i
propri CGI con la propria identita' per ogni VirtualHost (direttive User e
Group). Elimina gli interpreti incorporati in Apache che, essendo eseguiti
con l'identita' del server, causano "interferenze" tra i vari utenti.
Ciao,
         Umberto

          Umberto
Ciao, Vento



Questo lo vedi sempre. L' importante č che il diritto di scrittura sia
solo del proprietario della dir (se pubblica lui) o di un amministratore
unico (se pubblichi te).
La cosa migliore (se perň pubblichi te, magari da root) č dare un bel
chown nobody  e poi chmod 600 ai file, cosě li legge solo apache
-- 
Roberto Tagliaferri<-> r.tagliaferri@(forse)
tosnet.it
	Il giovane marito si ammira nudo allo specchio...
	"Vedi cara, con qualche centimetro in piů sarei un re"
	e la moglie "e con qualche centimetro di meno saresti una regina!"

 che e' solo un esempio.
Perche' adesso non puoi piu' usare l'interprete PHP integrato (<?php
...?>) ma devi creare un programma PHP usando l'interprete stand-alone
apposito. Se tizio scrive
         #!/bin/php
         <? system("ls /home/caio/public_html"); ?>
questo programma viene eseguito come tizio/users, che non puo' accedere
alla dir. di caio (la home dir. di tizio e' accessibile solo da UID=tizio
oppure da tutti i non appartenenti al GID=users).
NOTA 1: e' raccomandabile per la sicurezza mettere l'interprete PHP
stand-alone in una dir. diversa da quelle di Apache, per es. in /bin.
NOTA 2: e' raccomandabile che i CGI mettano i dati riservati al di fuori
delle dir. accessibili da Apache, pur rimanendo dentro alla home dir.
dell'utente. L'utente avra' cura di assicurarne l'accesso esclusivo:
"chmod u=rwx,go= segreti.db". Se questi segreti sono veramente segreti,
lascia stare tutto.
Osservazioni sulla sicurezza: ... (beh, fatemi sapere ;-)
Ciao,
         Umberto

          Umberto
Accidenti, questa si che e' una risposta esauriente! :)
grazie!!  ..mi metto subito al lavoro :)
Ciao,
            Vento

 grazie!!  ..mi metto subito al lavoro :)
Accidenti, 115 righe inutili per una risposta di 2, il quoting questo 
sconosciuto.
-- 
   ___         (o_
   |_|         //\
   | |ndry     V_/_ Linux Newbie, RH 7.1 (Seawolf)
                    Linux User #221457

 sconosciuto.
sei pesante :) ( wow, tutto su una riga )

 sei pesante :) ( wow, tutto su una riga )
Mi sono dimenticato una faccina, cmq, Vento, con post simili, rischi
il plonkaggio  su quasi tutti i NG ics.* :-)



Non e` pesante proprio per nulla, e tu non conosci minimamente la
netiquette. Sbagliare e` umano e non c'e` niente di male, questo 
invece potevi proprio risparmiartelo.
-- 
Meeting, n.:
	An assembly of people coming together to decide what person or
department not represented in the room must solve a problem.
Maurizio - Tannoiser - Lemmo
STIGE Srl Servizi Informatici
Founder Member of ERLUG (Emilia Romagna Linux User Group)
http://erlug.linux.it

ok , scusate avete ragione, e che piu che un consiglio mi pareva una 
polemica.
Non sono solito fare replay con tutto il mex dentro, ma questa volta mi 
e' scappato causa la fretta che avevo x il mio problema :)
scusate ancora :)
..errare e' umano :)