Pagina 1 di 1

Eseguire servizi in chroot

Inviato: lun mar 03, 2014 10:05
da miklos
Ciao a tutti,

stavo studiando la tecnica del chroot e mi è venuto il seguente dubbio.
Siccome al momento ho un server dove risiedono diversi servizi (in attesa di averne di piu' e quindi poter splittare le cose) secondo voi è meglio una jail per servizio, oppure una unica per tutti?!?!
Il dubbio mi è venuto perchè avendo un web server, in una jail chroot porterebbe con se l'applicazione web principale, percio' se ci installo anche un servizio che per un qualsiasi motivo è bucato.. un malintenzionato potrebbe modificarmi l'app web.
Di fatto pero' avere n jail chroot per ogni servizio mi sembra uno spreco di spazio, dato che dovrei di volta in volta ricreare l'alberatura.

Ciau

Re: Eseguire servizi in chroot

Inviato: lun mar 03, 2014 14:53
da ZeroUno
Trovare il giusto compromesso spetta a te.
Se configuri bene la jail chroot puoi riuscire a sprecare meno spazio possibile.
Poi non credo che sia impensabile di utilizzare una alberatura comune per i file essenziali (tipicamente i binari) utilizzando i link o mount particolari e porzioni dell'alberatura differenziate per servizio.

Tipicamente puoi dividere per tipologia di applicazione.

Una cosa interessante che si usa fare per i webserver è quella di montare la documentroot in readonly, così sei sicuro che non ti viene modificata l'applicazione. E se starti più istanze di apache puoi avviarle con utenti diversi (apache1 apache2 ... o direttamente il nome del servizio) invece di fare un unico apache o tanti jail hai anche una percentuale di sicurezza in più anche in sola lettura.

Il database invece lo metterei in un jail a se stante e lo condividerei con gli apache non con protocollo tcp ma con socket 'hardlinkato' tra le jails.

Re: Eseguire servizi in chroot

Inviato: lun mar 03, 2014 15:19
da miklos
ZeroUno ha scritto:Poi non credo che sia impensabile di utilizzare una alberatura comune per i file essenziali (tipicamente i binari) utilizzando i link o mount particolari e porzioni dell'alberatura differenziate per servizio.
quindi pur essendo una 'gabbia' è possibile usare link simbolici al sistema principale??! se è cosi' va già meglio anche se stavo pensando (l'ho visto fare su un tutorial) di creare binari statici per i servizi da ingabbiare in modo da non dovermi preoccupare piu' di tanto.
ZeroUno ha scritto:Una cosa interessante che si usa fare per i webserver è quella di montare la documentroot in readonly, così sei sicuro che non ti viene modificata l'applicazione.
ma cosi' facendo non mi precludo, o comunque rendo piu' scomodi eventuali aggiornamenti dell'app stessa!??!!?
ZeroUno ha scritto:Il database invece lo metterei in un jail a se stante e lo condividerei con gli apache non con protocollo tcp ma con socket 'hardlinkato' tra le jails
fortunatamente questo è già cosi' (non in chroot, ma è il solo webserver che è esposto all'esterno, il resto è accessibile tramite unix socket)

altra domanda.. pensavo a come aggiornare le gabbie.. se si possono fare link simbolici al sistema principale ok.. ma in caso negativo dovrei aggiornare manualmente le librerie comuni giusto??! per i server ingabbiati invece, su una slackware credo sia sufficiente installare direttamente il pacchetto nella root della gabbia.

scusa le domande banali, ma non ho una macchina a disposizione per provare e in ogni caso prima di buttarmi in questa nuova avventura vorrei capire se ne vale la pena, o meglio se il tempo di amministrazione aumenterebbe a livello esponenziale rispetto al già oneroso lavoro quotidiano (dato che per 8 ore faccio il programmatore.. le restanti 16 sistemista in erba)

ciau