View previous topic :: View next topic |
Author |
Message |
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
Posted: Tue Sep 07, 2010 2:09 pm Post subject: File system di rete read only ma con eccezioni |
|
|
Ciao a tutti
Mi stavo chiedendo se qualcuno poteva darmi un paio di dritte su questa mia idea:
Mi piacerebbe sharare un filesystem del server (A) con i server (B) (C) (D) (E)
Dove il file system è in ro ad eccezione di alcuni file.
Il caso pratico é una batteria di webservers con un nfs in backend.
il quale permette la scrittura solo dei file config.php e dei path /images /upload /tmp nelle rispettive home dei vari siti.
montare in rw ogni singolo path è fuori discussione sono più di 600 siti.
idee?
Quote: | in esplicazione a questa necessità:
se dovessero bucare uno o più webserver non potrebbero fare defacing o cancellare parti importanti dei siti. |
_________________ http://www.youtube.com/watch?v=_yoJI-Tl94g GLORY GLORY HYPNOTOAD
Last edited by koma on Wed Sep 08, 2010 9:01 am; edited 1 time in total |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Tue Sep 07, 2010 3:50 pm Post subject: |
|
|
praticamente, il filesystem A è ro per il 99% e rw per il resto?
potrebbe andare aufs? _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
Posted: Tue Sep 07, 2010 4:10 pm Post subject: |
|
|
Non conosco aufs controllo e ti rispondo cmq immagina l'alberatura del FS esportato è
Code: |
/sito1.it
/sito1.it/index.php
/sito1.it/admin/provate.php
/sito1.it/modules/blablah.php
/sito1.it/images/pippo.jpg
/sito1.it/images/pippo2.jpg
/sito1.it/tmp/
/sito2.com
/sito2.it/index.php
/sito2.it/admin/provate.php
/sito2.it/topolino/privatissimo.php
/sito2.it/modules/blablah.php
/sito2.it/images/pippo.jpg
/sito2.it/images/pippo2.jpg
/sito2.it/images2/pippo.jpg
/sito2.it/images2/pippo2.jpg
/sito2.it/tmp_lol/
|
e in tutto questo marasma solo */images/* e */tmp/* e */config.php devono essere scrivibili.
meglio ancora se posso fare una lista di eccezioni tipo:
Code: |
/sito1/images/* rw
/sito1/tmp/* rw
/sito2/images/* rw
/sito2/images2/* rw
/sito2/config.php rw
|
_________________ http://www.youtube.com/watch?v=_yoJI-Tl94g GLORY GLORY HYPNOTOAD |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Tue Sep 07, 2010 4:52 pm Post subject: |
|
|
aufs ti permetterebbe di separare fisicamente i contenuti ro da quelli rw con un unico comando, configurabile in fstab.
si tratta di un meccanismo di maschere.
si prepara una cartella ro e una rw, e si monta il contenuto della cartella ro, mascherato attraverso la rw su un percorso arbitrario (la radice dei tuoi siti). _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
Posted: Wed Sep 08, 2010 4:24 pm Post subject: |
|
|
Mi è venuto in mente... ma è possibile bloccare le permission dei file?
Del tipo ok è in rw ma solo sui file in rw! se un file è in ro non è possibile cambiarne i permessi.
... just wondering ... _________________ http://www.youtube.com/watch?v=_yoJI-Tl94g GLORY GLORY HYPNOTOAD |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Wed Sep 08, 2010 7:57 pm Post subject: |
|
|
ce ne sono senz'altro, ma non puoi pretendere che vengano tutte in mente a me!
koma wrote: | Mi è venuto in mente... ma è possibile bloccare le permission dei file?
Del tipo ok è in rw ma solo sui file in rw! se un file è in ro non è possibile cambiarne i permessi.
|
non credo che sia un grosso problema.
se provi a giocare con un esempio concreto te ne renderai conto subito.
le modifiche avvengono esclusivmamente nella cartella rw.
io uso aufs per mantenere diverse versioni dei miei kernel. in questo esempio:
. la mia ro è linux-2.6.35-gentoo-r5
. la mia rw è diff/linux-2.6.35-gentoo-r5-p5q/Makefile
. il mount-point aufs è linux-2.6.35-gentoo-r5-p5q
Code: |
s939 src # ls -l linux-2.6.35-gentoo-r5/Makefile diff/linux-2.6.35-gentoo-r5-p5q/Makefile linux-2.6.35-gentoo-r5-p5q/Makefile
ls: impossibile accedere a diff/linux-2.6.35-gentoo-r5-p5q/Makefile: No such file or directory
-rw-r--r-- 1 root root 51264 5 set 12.32 linux-2.6.35-gentoo-r5/Makefile
-rw-r--r-- 1 root root 51264 5 set 12.32 linux-2.6.35-gentoo-r5-p5q/Makefile
s939 src # chmod +x linux-2.6.35-gentoo-r5-p5q/Makefile
s939 src # ls -l linux-2.6.35-gentoo-r5/Makefile diff/linux-2.6.35-gentoo-r5-p5q/Makefile linux-2.6.35-gentoo-r5-p5q/Makefile
-rwxr-xr-x 1 root root 51264 5 set 12.32 diff/linux-2.6.35-gentoo-r5-p5q/Makefile*
-rw-r--r-- 1 root root 51264 5 set 12.32 linux-2.6.35-gentoo-r5/Makefile
-rwxr-xr-x 1 root root 51264 5 set 12.32 linux-2.6.35-gentoo-r5-p5q/Makefile*
s939 src # chmod -x linux-2.6.35-gentoo-r5-p5q/Makefile
s939 src # ls -l linux-2.6.35-gentoo-r5/Makefile diff/linux-2.6.35-gentoo-r5-p5q/Makefile linux-2.6.35-gentoo-r5-p5q/Makefile
-rw-r--r-- 1 root root 51264 5 set 12.32 diff/linux-2.6.35-gentoo-r5-p5q/Makefile
-rw-r--r-- 1 root root 51264 5 set 12.32 linux-2.6.35-gentoo-r5/Makefile
-rw-r--r-- 1 root root 51264 5 set 12.32 linux-2.6.35-gentoo-r5-p5q/Makefile
|
_________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
Posted: Thu Sep 09, 2010 1:17 pm Post subject: |
|
|
E' sicuramente una buona soluzione ma devi immaginare la nostra struttura...
Code: | [root@web1 /usr/local/www/apache22/data]# ls -la |grep ^d|wc -l
178
|
Code: |
[root@web2 /usr/local/www/apache22/data]# ls -la |grep ^d|wc -l
422
|
Code: |
[root@web3 /usr/local/www/apache22/data]# ls -la |grep ^d|wc -l
231
|
Ogni sito è diverso per struttura... andare a copiare a mano ogni singola directory è un po' un bagno di sangue _________________ http://www.youtube.com/watch?v=_yoJI-Tl94g GLORY GLORY HYPNOTOAD |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Thu Sep 09, 2010 7:20 pm Post subject: |
|
|
koma wrote: | ma devi immaginare la nostra struttura...
|
così mi confondi le idee.
le cartelle /usr/local... sono o non sono accessibili, sul server (A) del primo topic, come sottocartelle di una unica radice?
se sì, la tua obiezione dovrebbe cadere.
ma è ovvio che sei tu che a dover fare qualche prova e poi decidere.
facci sapere. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
Kernel78 Moderator
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Fri Sep 10, 2010 5:36 am Post subject: |
|
|
premetto che sono sveglio da poco e dopo aver letto e cercato di capire il tuo problema avrei voglia di tornare a nascondermi sotto le coperte ma visto che mia figlia mi ha fregato il posto provo a dire la mia ...
basarsi sui permessi ? _________________ Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con Code: | grep -vE '(^[[:space:]]*($|(#|!|;|//)))' |
|
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
Posted: Fri Sep 10, 2010 8:24 am Post subject: |
|
|
cloc3 wrote: | koma wrote: | ma devi immaginare la nostra struttura...
|
così mi confondi le idee.
le cartelle /usr/local... sono o non sono accessibili, sul server (A) del primo topic, come sottocartelle di una unica radice?
se sì, la tua obiezione dovrebbe cadere.
ma è ovvio che sei tu che a dover fare qualche prova e poi decidere.
facci sapere. | Allo stato attuale ho un server web per N° siti senza file system esportato.
L'idea è di raggruppare tutti i dati in un file server ed esportare solo il path che contiene i siti in NFS in modo da agganciarlo su una batteria di web servers
scusa avrei dovuto precisarlo prima. _________________ http://www.youtube.com/watch?v=_yoJI-Tl94g GLORY GLORY HYPNOTOAD |
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
Posted: Fri Sep 10, 2010 8:26 am Post subject: |
|
|
Kernel78 wrote: | premetto che sono sveglio da poco e dopo aver letto e cercato di capire il tuo problema avrei voglia di tornare a nascondermi sotto le coperte ma visto che mia figlia mi ha fregato il posto provo a dire la mia ...
basarsi sui permessi ? | Se sploitano la macchina riescono a lavorare come ID=0 (root) e i permessi vanno a farsi benedire.
L'idea era appunto montare da un fs di rete i path con le pagine web in modalità read only e avere una lista di eccezioni in cui permettere il write.
Questo perchè così le macchine di front end diventano meri interpreti mentre i siti si trovano da un'altra parte _________________ http://www.youtube.com/watch?v=_yoJI-Tl94g GLORY GLORY HYPNOTOAD |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Fri Sep 10, 2010 7:29 pm Post subject: |
|
|
allora.
siccome sono partito con aufs, insisto testardamente, cercando di proporre uno scenario che, secondo me, potresti utilizare.
supponi di avere i siti pippo e topolino.
per ciascuno di essi utlizzi un web server separato PIPPO e TOPOLINO.
ogni server esporta due percorsi nfs:
PIPPO:/path_ro e PIPPO:/path_rw e idem per topolino.
il server A è esclusivamente un client nfs.
strutturi il sistema a questo modo:
/var/nfsmount_ro/pippo
/var/nfsmount_ro/topino
/var/nfsmount_rw/pippo
/var/nfsmount_rw/topolino
/var/www/pippo
/var/www/topolino
ovviamente gli ultimi due sono i mount aufs, dove lavora apache.
se un cracker sfonda il server A, può agire solo sui mount nfs in rw, quindi sei a posto.
con questo non pretendo che tu sia soddisfatto (esiteranno sicuramente tecniche alternative, e comunque non ho idea delle prestazioni di scala di aufs - io so che funziona bene sui cdrom ).
però tu fatti sentire più spesso sul forum. altrimenti vedi cosa succede, che non sai neppure cosa sia aufs.
_________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
Kernel78 Moderator
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Sat Sep 11, 2010 12:38 am Post subject: |
|
|
koma wrote: | Kernel78 wrote: | premetto che sono sveglio da poco e dopo aver letto e cercato di capire il tuo problema avrei voglia di tornare a nascondermi sotto le coperte ma visto che mia figlia mi ha fregato il posto provo a dire la mia ...
basarsi sui permessi ? | Se sploitano la macchina riescono a lavorare come ID=0 (root) e i permessi vanno a farsi benedire.
L'idea era appunto montare da un fs di rete i path con le pagine web in modalità read only e avere una lista di eccezioni in cui permettere il write.
Questo perchè così le macchine di front end diventano meri interpreti mentre i siti si trovano da un'altra parte |
Scusa ma con NFS fai uno squash di root così che venga rimappato su un utente senza privilegi ... _________________ Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con Code: | grep -vE '(^[[:space:]]*($|(#|!|;|//)))' |
|
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
Posted: Sat Sep 11, 2010 1:35 pm Post subject: |
|
|
Kernel78 wrote: | koma wrote: | Kernel78 wrote: | premetto che sono sveglio da poco e dopo aver letto e cercato di capire il tuo problema avrei voglia di tornare a nascondermi sotto le coperte ma visto che mia figlia mi ha fregato il posto provo a dire la mia ...
basarsi sui permessi ? | Se sploitano la macchina riescono a lavorare come ID=0 (root) e i permessi vanno a farsi benedire.
L'idea era appunto montare da un fs di rete i path con le pagine web in modalità read only e avere una lista di eccezioni in cui permettere il write.
Questo perchè così le macchine di front end diventano meri interpreti mentre i siti si trovano da un'altra parte |
Scusa ma con NFS fai uno squash di root così che venga rimappato su un utente senza privilegi ... | Faccio un cosa in cosa per cosa? _________________ http://www.youtube.com/watch?v=_yoJI-Tl94g GLORY GLORY HYPNOTOAD |
|
Back to top |
|
|
cloc3 Advocate
Joined: 13 Jan 2004 Posts: 4788 Location: http://www.gentoo-users.org/user/cloc3/
|
Posted: Sat Sep 11, 2010 1:40 pm Post subject: |
|
|
koma wrote: | Faccio un cosa in cosa per cosa? |
man export.
ha ragione Kernel78.
probabilmente, l'opzione root_squash (che tra l'altro dovrebbe essere il default) è sufficiente per la tua richiesta.
se l'utente root del client nfs cerca di accedere ai dati del mount, il server lo tratta come se fosse un qualunque utente nonprivilegiato (nobody).
sul server, gestisci i privilegi di nobody come piace a te, e sei a cavallo. _________________ vu vu vu
gentù
mi piaci tu |
|
Back to top |
|
|
koma Advocate
Joined: 06 Jun 2003 Posts: 2702 Location: Italy
|
|
Back to top |
|
|
Kernel78 Moderator
Joined: 24 Jun 2005 Posts: 3654
|
Posted: Sat Sep 11, 2010 1:55 pm Post subject: |
|
|
koma wrote: | mi sto arrapando |
oh cavoli, spero non sia merito mio _________________ Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con Code: | grep -vE '(^[[:space:]]*($|(#|!|;|//)))' |
|
|
Back to top |
|
|
|