Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[risolto] disabiltiare php per le homedir
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Forum di discussione italiano
View previous topic :: View next topic  
Author Message
FreeManAtomic
Guru
Guru


Joined: 01 Feb 2005
Posts: 365

PostPosted: Sun Jun 11, 2006 9:29 pm    Post subject: [risolto] disabiltiare php per le homedir Reply with quote

Ciao,
mi trovo davante a questa necessità dato che purtroppo non posso settare a livello di directory le funzioni da disabilitare preferisco spegnerlo del tutto. Ma purtroppo in giro non trovo documentazione al riguardo.
Per ora sono riuscito a limtiare l'accesso alla stessa cartella e in safe mode.

Code:

<IfModule mod_userdir.c>
        UserDir /home/users/*/public_html
        <Directory /home/users/*/public_html>
            php_admin_value open_basedir .
            php_admin_flag safe_mode on

            AllowOverride FileInfo AuthConfig Limit
            Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
            <Limit GET POST OPTIONS PROPFIND>
                Order allow,deny
                Allow from all
                Deny from 172.16.200.203
            </Limit>
            <LimitExcept GET POST OPTIONS PROPFIND>
                Order deny,allow
                Deny from all
                Allow from 172.16.
            </LimitExcept>
        </Directory>
</IfModule>


Ma vorrei proprio che gli utenti non lo utilizzassero, si e paranoia lo so!!

Qualcuno ci ha provato con successo?


Last edited by FreeManAtomic on Mon Jun 12, 2006 6:12 pm; edited 1 time in total
Back to top
View user's profile Send private message
Peach
Advocate
Advocate


Joined: 08 Mar 2003
Posts: 3686
Location: London, UK

PostPosted: Sun Jun 11, 2006 10:04 pm    Post subject: Reply with quote

togli "-D USERDIR" dalle APACHE2_OPTS in /etc/conf.d/apache
_________________
Gentoo user since 2004.
"It's all fun and games, until someone loses an eye" - mom
Back to top
View user's profile Send private message
.:chrome:.
Advocate
Advocate


Joined: 19 Feb 2005
Posts: 4588
Location: Brescia, Italy

PostPosted: Sun Jun 11, 2006 10:23 pm    Post subject: Re: disabiltiare php per le homedir Reply with quote

non credo sia possibile.

l'interprete php viene richiamato attraverso un bind sul tipo di file. in sostanza un file con le estensioni di php viene dato in pasto all'interprete, indipendentemente da quale che sia la sua posizione nel file system. questo vuol dire che l'interprete può essere attivato o disattivato, ma a livello globale, e non selettivo. questa è la versione che conosco io

se però dedichi qualche parola a raccontare il motivo per cui hai questa esigenza, forse si può trovare una soluzione equivalente. dipende da cosa devi fare tu
Back to top
View user's profile Send private message
Peach
Advocate
Advocate


Joined: 08 Mar 2003
Posts: 3686
Location: London, UK

PostPosted: Sun Jun 11, 2006 10:55 pm    Post subject: Re: disabiltiare php per le homedir Reply with quote

k.gothmog wrote:
non credo sia possibile.

l'interprete php viene richiamato attraverso un bind sul tipo di file. in sostanza un file con le estensioni di php viene dato in pasto all'interprete, indipendentemente da quale che sia la sua posizione nel file system. questo vuol dire che l'interprete può essere attivato o disattivato, ma a livello globale, e non selettivo. questa è la versione che conosco io

a livello generale si dovrebbe poter proibile l'esecuzione di qualsiasi file (o estensioni) in determinati punti del server. Penso che su apache.org ci siano pure dei tutorial a riguardo, se ho un secondo ci indago.
resta il fatto che per disabilitare PENSO basti eliminare -D USERDIR dalle opzioni di partenza di apache2.
_________________
Gentoo user since 2004.
"It's all fun and games, until someone loses an eye" - mom
Back to top
View user's profile Send private message
Cazzantonio
Bodhisattva
Bodhisattva


Joined: 20 Mar 2004
Posts: 4514
Location: Somewere around the world

PostPosted: Sun Jun 11, 2006 11:17 pm    Post subject: Reply with quote

Moved from Forum italiano (Italian) to Forum di discussione italiano.
_________________
Any mans death diminishes me, because I am involved in Mankinde; and therefore never send to know for whom the bell tolls; It tolls for thee.
-John Donne
Back to top
View user's profile Send private message
skakz
Guru
Guru


Joined: 03 Jul 2004
Posts: 380
Location: Ischia/Napoli/Italia/Terra

PostPosted: Mon Jun 12, 2006 10:16 am    Post subject: Reply with quote

prova ad aggiungere questo nella sezione <Directory>

Code:
<Files ~ "(\.(php|conf|pl|sh|py|sql)|Entries|Repositories|Root|scripts|updates)$">
order deny,allow
deny from all
</Files>

_________________
Linux Registered User n.340423
Linux User Group Ischia
www.tush.it
Back to top
View user's profile Send private message
FreeManAtomic
Guru
Guru


Joined: 01 Feb 2005
Posts: 365

PostPosted: Mon Jun 12, 2006 5:24 pm    Post subject: Reply with quote

l'esigienza e semplice non voglio che nelle userdir, si possano eseguire tutti i possibili script php, tipo readline('/etc/passwd'), pero questo l'ho risolto settando open_basedir e safe_mode a livello di directory (questo si e possibile farlo, come si vede nel codice) L'altra esigienza invece e' evitare che gli utenti tentino di connettersi al db mysql che si trova sulla macchina (lo so e paranoia), per questo vorrei disabilitare tutte le funzioni mysql_* MA NON lo posso fare a livello globare, per i miei script devono funzionare! :) Voglio solo che gli utenti non li usino.

Cercando in giro l'unica soluzione trovata sembra sia avviare due istanze di apache con due php.... cosa che non ho intenzione di fare :)
Back to top
View user's profile Send private message
!equilibrium
Bodhisattva
Bodhisattva


Joined: 06 Jun 2004
Posts: 2109
Location: MI/BG/LC

PostPosted: Mon Jun 12, 2006 5:53 pm    Post subject: Reply with quote

non so se ho capito bene il problema, ma basterebbe usare la direttiva:

Code:
php_flag engine off


dentro un file .htaccess, messa in una directory a monte delle USERDIR, e da applicare in cascata su tutte le sottodir tramite una direttiva <Directory>

ovviamente in http.conf, nella sezione specifica per le homedir, va abilitato il supporto agli .htaccess altrimenti non ha effetto alcuno.

/EDIT: per maggiori chiarimenti http://it.php.net/apache
_________________
Arch Tester for Gentoo/FreeBSD
Equilibrium's Universe

all my contents are released under the Creative Commons Licence by-nc-nd 2.5
Back to top
View user's profile Send private message
.:chrome:.
Advocate
Advocate


Joined: 19 Feb 2005
Posts: 4588
Location: Brescia, Italy

PostPosted: Mon Jun 12, 2006 5:55 pm    Post subject: Reply with quote

secondo me ti complichi la vita inutilmente (leggi: ti stai facendo delle seghe mentali). ovviamente scherzo

per evitare che legganmo il contenuto di /etc puoi impostare una ACL avanzata che toglie ogni permesso ad un determinato gruppo (pacchetto acl, comando setfacl).
per evitare che si connettano al db mysql, basta impostare i provilegi di accesso nel db stesso. non c'è molto da fare se non si ha un utente valido per accedere
Back to top
View user's profile Send private message
FreeManAtomic
Guru
Guru


Joined: 01 Feb 2005
Posts: 365

PostPosted: Mon Jun 12, 2006 6:11 pm    Post subject: Reply with quote

@ !equilibrium perfetto funziona grazie!

@k.gothmog tranquillo, lo so che mi sto facendo delle seghe mentali :)
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Forum di discussione italiano All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum