Dimensione: 2949
Commento: Iniziata la traduzione. Per ora solo sezione 1
|
Dimensione: 8353
Commento: tradotti complain e enforce, aggiunte NdT che spiega come funzionano
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 4: | Linea 4: |
||<tablestyle="float:right; font-size: 0.9em; width:35%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Indice'''[[BR]][[TableOfContents(2)]]|| | ||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Indice'''[[BR]][[TableOfContents(2)]]|| |
Linea 7: | Linea 7: |
La traduzione di questo documento non è ancora completa. Consultare la sezione ''Ulteriori risorse'' per collegamento al documento originale | La traduzione di questo documento non è ancora completa. Consultare la sezione ''Ulteriori risorse'' per collegamento al documento originale. L'ultima modifica dell'originale è del 2007-10-16 01:07:34, fatta da MathiasGug |
Linea 34: | Linea 36: |
* Installare i pacchetti 'apparmor-profiles'', ''apparmor-utils'' e ''apparmor packages''. Consultare ??? | * Installare i pacchetti ''apparmor-profiles'', ''apparmor-utils'' e ''apparmor packages''. Consultare ??? |
Linea 47: | Linea 49: |
Tutti i comandi debbono essere eseguiti in un terminale. == Elencare lo stato corrente di apparmor == {{{ sudo apparmor_status }}} == Mettere un profilo in modalità apprendimento == {{{ sudo aa-complain /percorso/al/binario }}} Esempio: {{{ sudo aa-complain /bin/ping }}} '''''NdT''': nella modalità apprendimento (in originale complain) vengono rilevate le violazioni alle regole dei profili di App``Armor (ad esempio il programma profilato accede a file non permessi dal profilo). Tali violazioni sono permesse, ma anche registrate. Questa modalità è conveniente per lo sviluppo di profili ed è usata dagli strumenti di App``Armor per la generazione dei profili. (dalla documentazione su novell.com)'' == Mettere tutti i profili in modalità apprendimento == {{{ sudo aa-complain /etc/apparmor.d/* }}} == Mettere un profilo in modalità esecutiva == {{{ sudo aa-enforce /percorso/al/binario }}} Esempio: {{{ sudo aa-enforce /bin/ping }}} '''''NdT:''' il caricamento di un profilo nella modalità di esecuzione (enforcment) fa sì che sia rispettata la politica definita nel profilo e allo stesso tempo segnalata a syslogd ogni tentata violazione. (dalla documentazione su novell.com) == Mettere tutti i profili in modalità esecutiva == {{{ sudo aa-enforce /etc/apparmor.d/* }}} == Disabilitare l'infrastruttura AppArmor == {{{ sudo /etc/init.d/apparmor kill sudo update-rc.d -f apparmor remove }}} == Abilitare l'infrastruttura AppArmor == {{{ sudo /etc/init.d/apparmor start sudo update-rc.d apparmor start 37 S . }}} == Ricaricare tutti i profili == {{{ sudo /etc/init.d/apparmor reload }}} == Ricaricare un profilo == {{{ cat /etc/apparmor.d/nome.profilo | sudo apparmor_parser -r }}} Esempio: {{{ cat /etc/apparmor.d/bin.ping | sudo apparmor_parser -r }}} == Disabilitare un profilo == {{{ ln -s /etc/apparmor.d/nome.profilo /etc/apparmor.d/disable/ apparmor_parser -R /etc/apparmor.d/nome.profilo }}} Esempio: {{{ ln -s /etc/apparmor.d/bin.ping /etc/apparmor.d/disable/ apparmor_parser -R /etc/apparmor.d/bin.ping }}} == Abilitare un profilo == In modo predefinito, i profili sono abilitati (cioè caricati all'interno del kernel e applicati ai processi). {{{ rm /etc/apparmor.d/disable/nome.profilo cat /etc/apparmor.d/nome.profilo | sudo apparmor_parser -a }}} Esempio: {{{ rm /etc/apparmor.d/disable/bin.ping cat /etc/apparmor.d/bin.ping | sudo apparmor_parser -a }}} |
|
Linea 49: | Linea 138: |
I profili possono essere trovati in {{{/etc/apparmor.d/}}}. Alcune personalizzazioni possono essere compiute in {{{/etc/apparmor.d/tunables/}}}. == Impostare la posizione delle directory home == La posizione delle directory home può essere regolata in {{{/etc/apparmor.d/tunables/home}}}. |
|
Linea 52: | Linea 147: |
== apparmor_status riporta processi che sono non confinati ma che hanno definito un profilo == Riavviare i processi elencati. Anche eseguire un riavvio di sistema corregge il problema. App``Armor può tenere traccia e proteggere solo i processi che sono avviato dopo che il modulo kernel è stato caricato. Dopo l'installazione dei pacchetti apparmor, apparmor viene avviato. I processi già in esecuzione però non vengono protetti da App``Armor. Sia riavviare il processo che l'intero sistema corregge il problema. È anche possibile applicare un profilo a un processo già in esecuzione attraverso il seguente comando: {{{ sudo sh -c "echo 'setprofile /percorso/al/binario' > /proc/pid/attr/current" }}} [[Anchor(newprofile)]] |
|
Linea 54: | Linea 160: |
== Progettare un piano di test == Provare a pensare a come è possibile mettere sotto tortura l'applicazione. Il piano di test dovrebbe essere diviso in casi di test più piccoli. Ciascun caso di test dovrebbe avere una piccola descrizione ed elencare i passi da seguire. Alcuni casi di test standard sono: * avviare il programma * arrestare il programma * ricaricare il programma * controllare tutti i comandi supportati dallo script di init == Generare il nuovo profilo == Usare ''aa-genprof'' per generare un nuovo profilo. Da un terminale, usare il comando ''aa-genprof''. {{{ sudo aa-genprof eseguibile }}} Esempio: {{{ sudo aa-genprof slapd }}} Maggiori informazioni sono disponibili nella pagina di manuale: {{{man aa-genprof}}}. == Includere il proprio nuovo profilo nel pacchetto apparmor-profiles == Per fare in modo che il proprio nuovo profilo sia incluso nel pacchetto ''apparmor-profiles'', aprire in Launchpad un bug per il [https://bugs.launchpad.net/ubuntu/+source/apparmor/+filebug pacchetto AppArmor]: * includere il proprio piano di test e i casi di test * allegare il proprio profilo al bug [[Anchor(updateprofile)]] |
|
Linea 55: | Linea 194: |
Quando il programma non si comporta in modo corretto, vengono inviati dei messaggi di audit ai file di registro. È possibile usare il programma ''aa-logprof'' per scansionare i file di registro in cerca dei messaggi di App``Armor, revisionare tali messaggi e aggiornare i profili. {{{ sudo aa-logprof }}} Maggiori informazioni sono disponibili nella pagina di manuale: {{{man aa-logprof}}}. |
|
Linea 61: | Linea 208: |
* [http://www.novell.com/documentation/apparmor/index.html?page=/documentation/apparmor/apparmor_user/data/bktitleuser.html Guida rapida e Guida di Amministrazione su Novell Doc] | |
Linea 63: | Linea 211: |
CategorySicurezza | CategorySicurezza CategoryInTraduzione |
IndiceBRTableOfContents(2) |
Nota
La traduzione di questo documento non è ancora completa. Consultare la sezione Ulteriori risorse per collegamento al documento originale.
L'ultima modifica dell'originale è del 2007-10-16 01:07:34, fatta da MathiasGug
Introduzione
AppArmor è una implementazione Linux Security Module di controlli d'accesso basato sul nome. AppArmor confina i singoli programmi a un gruppo di file elencati e "draft capabilities posix 1003.1e" -- se non ci capite nulla, beh, non siete i soli --Luca
AppArmor è stato reso disponibile su Ubuntu per la prima volta in Ubuntu 7.04 nel repository Universe.
Installazione
Ubuntu 7.10 (Gutsy)
In Gutsy, AppArmor è installato e caricato in modo predefinito. Alcuni pacchetti installano dei profili propri. Profili aggiuntivi possono essere trovati nel pacchetto apparmor-profiles nel repository Universe.
Installare profili AppArmor addizionali
- Abilitare il repository Universe.
Installare il pacchetto apparmor-profiles. Consultare ???.
Ubuntu 7.04 (Feisty)
AppArmor non è incluso in modo predefinito nel kernel fornito con Feisty. È necessario compilarlo manualmente.
- Abilitare il repository Universe.
Installare i pacchetto apparmor-modules-sources e module-assistant. Consultare ???
- Compilare il modulo kernel apparmor:
{{{sudo m-a -v -t prepare sudo m-a -v -t -f build apparmor-modules sudo m-a -v -t install apparmor-modules }}}
Installare i pacchetti apparmor-profiles, apparmor-utils e apparmor packages. Consultare ???
Installare la versione più recente
Per installare i pacchetti apparmor per Feisty più recenti, è necessario effettuare il rebuild dei pacchetti. Consultare [https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/116627 le ultime utilità apparmor per feisty (LP 116627)
Aggiornamento kernel/apparmor-module-source
Quando viene installato un nuovo kernel o una nuova versione di apparmor-module-source, è necessario ricompilare il modulo apparmor: {{{sudo m-a -v -t -f build apparmor-modules sudo m-a -v -t install apparmor-modules }}} Per essere sicuri che tutti i processi in esecuzione siano protetti, è necessario riavviare il sistema.
Utilizzo
Tutti i comandi debbono essere eseguiti in un terminale.
Elencare lo stato corrente di apparmor
sudo apparmor_status
Mettere un profilo in modalità apprendimento
sudo aa-complain /percorso/al/binario
Esempio:
sudo aa-complain /bin/ping
NdT: nella modalità apprendimento (in originale complain) vengono rilevate le violazioni alle regole dei profili di AppArmor (ad esempio il programma profilato accede a file non permessi dal profilo). Tali violazioni sono permesse, ma anche registrate. Questa modalità è conveniente per lo sviluppo di profili ed è usata dagli strumenti di AppArmor per la generazione dei profili. (dalla documentazione su novell.com)
Mettere tutti i profili in modalità apprendimento
sudo aa-complain /etc/apparmor.d/*
Mettere un profilo in modalità esecutiva
sudo aa-enforce /percorso/al/binario
Esempio:
sudo aa-enforce /bin/ping
NdT: il caricamento di un profilo nella modalità di esecuzione (enforcment) fa sì che sia rispettata la politica definita nel profilo e allo stesso tempo segnalata a syslogd ogni tentata violazione. (dalla documentazione su novell.com)
Mettere tutti i profili in modalità esecutiva
sudo aa-enforce /etc/apparmor.d/*
Disabilitare l'infrastruttura AppArmor
sudo /etc/init.d/apparmor kill sudo update-rc.d -f apparmor remove
Abilitare l'infrastruttura AppArmor
sudo /etc/init.d/apparmor start sudo update-rc.d apparmor start 37 S .
Ricaricare tutti i profili
sudo /etc/init.d/apparmor reload
Ricaricare un profilo
cat /etc/apparmor.d/nome.profilo | sudo apparmor_parser -r
Esempio:
cat /etc/apparmor.d/bin.ping | sudo apparmor_parser -r
Disabilitare un profilo
ln -s /etc/apparmor.d/nome.profilo /etc/apparmor.d/disable/ apparmor_parser -R /etc/apparmor.d/nome.profilo
Esempio:
ln -s /etc/apparmor.d/bin.ping /etc/apparmor.d/disable/ apparmor_parser -R /etc/apparmor.d/bin.ping
Abilitare un profilo
In modo predefinito, i profili sono abilitati (cioè caricati all'interno del kernel e applicati ai processi).
rm /etc/apparmor.d/disable/nome.profilo cat /etc/apparmor.d/nome.profilo | sudo apparmor_parser -a
Esempio:
rm /etc/apparmor.d/disable/bin.ping cat /etc/apparmor.d/bin.ping | sudo apparmor_parser -a
Pesonalizzazione dei profili
I profili possono essere trovati in /etc/apparmor.d/.
Alcune personalizzazioni possono essere compiute in /etc/apparmor.d/tunables/.
Impostare la posizione delle directory home
La posizione delle directory home può essere regolata in /etc/apparmor.d/tunables/home.
Domande frequenti
apparmor_status riporta processi che sono non confinati ma che hanno definito un profilo
Riavviare i processi elencati. Anche eseguire un riavvio di sistema corregge il problema.
AppArmor può tenere traccia e proteggere solo i processi che sono avviato dopo che il modulo kernel è stato caricato. Dopo l'installazione dei pacchetti apparmor, apparmor viene avviato. I processi già in esecuzione però non vengono protetti da AppArmor. Sia riavviare il processo che l'intero sistema corregge il problema.
È anche possibile applicare un profilo a un processo già in esecuzione attraverso il seguente comando:
sudo sh -c "echo 'setprofile /percorso/al/binario' > /proc/pid/attr/current"
Creazione di un nuovo profilo
Progettare un piano di test
Provare a pensare a come è possibile mettere sotto tortura l'applicazione. Il piano di test dovrebbe essere diviso in casi di test più piccoli. Ciascun caso di test dovrebbe avere una piccola descrizione ed elencare i passi da seguire.
Alcuni casi di test standard sono:
- avviare il programma
- arrestare il programma
- ricaricare il programma
- controllare tutti i comandi supportati dallo script di init
Generare il nuovo profilo
Usare aa-genprof per generare un nuovo profilo.
Da un terminale, usare il comando aa-genprof.
sudo aa-genprof eseguibile
Esempio:
sudo aa-genprof slapd
Maggiori informazioni sono disponibili nella pagina di manuale: man aa-genprof.
Includere il proprio nuovo profilo nel pacchetto apparmor-profiles
Per fare in modo che il proprio nuovo profilo sia incluso nel pacchetto apparmor-profiles, aprire in Launchpad un bug per il [https://bugs.launchpad.net/ubuntu/+source/apparmor/+filebug pacchetto AppArmor]:
- includere il proprio piano di test e i casi di test
- allegare il proprio profilo al bug
Aggiornamento dei profili
Quando il programma non si comporta in modo corretto, vengono inviati dei messaggi di audit ai file di registro. È possibile usare il programma aa-logprof per scansionare i file di registro in cerca dei messaggi di AppArmor, revisionare tali messaggi e aggiornare i profili.
sudo aa-logprof
Maggiori informazioni sono disponibili nella pagina di manuale: man aa-logprof.
Ulteriori risorse
[https://help.ubuntu.com/community/AppArmor Documento originale su ubuntu.com]
[http://en.opensuse.org/AppArmor_Geeks Intro to AppArmor for Geeks]: utilizzo dettagliato di apparmor
[http://outflux.net/blog/archives/2007/04/02/apparmor-now-in-feisty/ AppArmor now in Feisty]: breve tutorial sulla generazione di un nuovo profilo per Evince.
[http://www.novell.com/documentation/apparmor/index.html?page=/documentation/apparmor/apparmor_user/data/bktitleuser.html Guida rapida e Guida di Amministrazione su Novell Doc]