Eseguire servizi in chroot

Postate qui per tutte le discussioni legate alla sicurezza di Linux/Slackware

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Eseguire servizi in chroot

Messaggio 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
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Avatar utente
ZeroUno
Staff
Staff
Messaggi: 5441
Iscritto il: ven 2 giu 2006, 14:52
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current
Località: Roma / Castelli
Contatta:

Re: Eseguire servizi in chroot

Messaggio 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.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg

Codice: Seleziona tutto

1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111

ilmich
Master
Master
Messaggi: 1645
Iscritto il: lun 16 lug 2007, 17:39
Slackware: 15.0 64bit
Kernel: 5.15.27
Desktop: kde
Località: Roma

Re: Eseguire servizi in chroot

Messaggio 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
#LiveSimple and #ProgramThings
https://github.com/ilmich
http://ilmich6502.it/

Rispondi