Pagina 1 di 1
Eseguire servizi in chroot
Inviato: lun 3 mar 2014, 10:05
da ilmich
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 3 mar 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 3 mar 2014, 15:19
da ilmich
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