Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Sicurezza/Firejail"
Differenze tra le versioni 1 e 4 (in 3 versioni)
Versione 1 del 18/01/2022 18.07.13
Dimensione: 7394
Autore: jeremie2
Commento: importata da Carlin0/Prove0
Versione 4 del 22/04/2022 12.50.39
Dimensione: 6927
Autore: carlin0
Commento: Verificata 22.04
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 6: Linea 6:
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=648300"; rilasci="20.04")>> <<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=648300"; rilasci="22.04 20.04")>>
Linea 14: Linea 14:
Linea 20: Linea 19:
Esiste anche un'interfaccia grafica basata sulle librerie [[https://it.wikipedia.org/wiki/Qt_(toolkit)|Qt]], installabile tramite il pacchetto [[apt://firetools|firetools]], ma non lo tratteremo in questa pagina poiché non consente di sfruttare le molteplici possibilità che si hanno operando dal [[AmministrazioneSistema/Terminale|terminale]], grazie a tutte le opzioni disponibili. Esiste anche un'interfaccia grafica basata sulle librerie [[https://it.wikipedia.org/wiki/Qt_(toolkit)|Qt]], installabile tramite il pacchetto [[apt://firetools|firetools]], ma non viene qui trattata poiché non consente di sfruttare le molteplici possibilità che si hanno operando dal [[AmministrazioneSistema/Terminale|terminale]], grazie a tutte le opzioni disponibili.
Linea 22: Linea 21:

##Forse sarebbe meglio implementare 2 righe sull'interfaccia grafica,
##premesso che non l'ho mai usata, si può sempre fare successivamente una pagina a se stante
Linea 30: Linea 26:
 0. Avviare un programma in ''sandbox'' digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{  0. Avviare un programma in ''sandbox''. Digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
Linea 36: Linea 32:
 0. Avviare un programma in '''''modalità privata''''', per inibire il programma a leggere i file della propria '''Home''' comprese le configurazioni dell'applicazione stessa, digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{  0. Avviare un programma in '''''modalità privata''''', per inibire il programma a leggere i file della propria '''Home''' comprese le configurazioni dell'applicazione stessa:{{{
Linea 38: Linea 34:
}}} Ad esempio:{{{ }}} ad esempio:{{{
Linea 42: Linea 38:
 0. Listare i programmi che usano '''firejail''', digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{  0. Listare i programmi che usano '''firejail''':{{{
Linea 53: Linea 49:
 0. Listare i collegamenti simbolici creati a '''firejail''', digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{  0. Listare i collegamenti simbolici creati a '''firejail''':{{{
Linea 64: Linea 60:
 0. Per eliminare tutti i collegamenti simbolici creati a '''firejail''', digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{  0. Per eliminare tutti i collegamenti simbolici creati a '''firejail''', digitare:{{{
Linea 67: Linea 63:
 0. Per eliminare solo un collegamento simbolico definito, digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{  0. Per eliminare solo un collegamento simbolico definito, digitare:{{{
Linea 72: Linea 68:
 0. Per uccidere un processo in sandbox ,digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{  0. Per ''uccidere'' un processo in sandbox ,digitare:{{{
Linea 76: Linea 72:
{{{#!wiki tip
Linea 77: Linea 74:
}}}
Linea 81: Linea 78:
Per configurare il menù ad avviare l'applicazione in sandbox esistono due opzioni. Per configurare il menù in modo che le applicazioni vengano avviate in sandbox, esistono due opzioni.
Linea 96: Linea 93:
Questa opzione configura d'avviare tutte le applicazioni in sandbox. Questa opzione permette di avviare tutte le applicazioni in sandbox.
Linea 99: Linea 96:
Questa modalità è limitativa del funzionamento delle applicazioni, poiché imposta configurazioni estremamente restrittive nell'uso delle applicazioni stesse. Questa modalità può limitare il funzionamento delle applicazioni, poiché imposta configurazioni estremamente restrittive nell'uso delle applicazioni stesse.
Linea 149: Linea 146:
Le impostazioni scritte nei file `*.profile` che sono nella '''Home''' hanno priorità superiore rispetto a quelle scritte nei file `*.profile` in `/etc/firejail`.

Le impostazioni scritte nei file `*.local` hanno priorità superiore rispetto a quelle scritte nei file `*.profile`.
 * Le impostazioni scritte nei file `*.profile` che sono nella '''Home''' hanno priorità superiore rispetto a quelle scritte nei file `*.profile` in `/etc/firejail`.
 * Le impostazioni scritte nei file `*.local` hanno priorità superiore rispetto a quelle scritte nei file `*.profile`.


Guida verificata con Ubuntu: 20.04 22.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Firejail è un programma sandbox SUID di sicurezza che riduce il rischio di falle nella sicurezza restringendo l'ambiente di esecuzione di applicazioni non fidate, usando namespace Linux e seccomp-bpf.

Permette ad un processo e tutti i suoi discendenti di avere la propria vista privata delle risorse del kernel globalmente condivise, come lo stack di rete, la tabella dei processi e la tabella dei montaggi.

Installazione

Esiste anche un'interfaccia grafica basata sulle librerie Qt, installabile tramite il pacchetto firetools, ma non viene qui trattata poiché non consente di sfruttare le molteplici possibilità che si hanno operando dal terminale, grazie a tutte le opzioni disponibili.

Funzionamento

Vengono presi come esempi le applicazioni Firefox e Telegram Desktop.

  1. Avviare un programma in sandbox. Digitare nel terminale:

    firejail <nome_programma>

    Ad esempio:

    firejail firefox
    firejail telegram-desktop
  2. Avviare un programma in modalità privata, per inibire il programma a leggere i file della propria Home comprese le configurazioni dell'applicazione stessa:

    firejail --private <nome_programma>

    ad esempio:

    firejail --private firefox
    firejail --private telegram-desktop
  3. Listare i programmi che usano firejail:

    firejail --list

    Viene mostrato un risultato simile a questo:

    1734:carlo::/usr/bin/firejail /usr/bin/firefox
    2456:carlo::/usr/bin/firejail /usr/bin/liferea 
    2531:carlo::/usr/bin/firejail /usr/bin/telegram-desktop -

    In alternativa:

    firejail --top

    Per un risultato più completo:

    firejail --tree
  4. Listare i collegamenti simbolici creati a firejail:

    firecfg --list

    Viene mostrato un risultato simile a questo:

    /usr/local/bin/thunderbird
    /usr/local/bin/keepassxc
    /usr/local/bin/firefox
    /usr/local/bin/liferea
    /usr/local/bin/hexchat
    /usr/local/bin/google-chrome-stable
    /usr/local/bin/telegram-desktop
  5. Per eliminare tutti i collegamenti simbolici creati a firejail, digitare:

    sudo firecfg --clean
  6. Per eliminare solo un collegamento simbolico definito, digitare:

    sudo rm /usr/local/bin/nome_programma

    Ad esempio:

    sudo rm /usr/local/bin/hexchat
  7. Per uccidere un processo in sandbox ,digitare:

    firejail --shutdown=PID

Per ulteriori opzioni e impostazioni, consultare le pagine man firejail e firecfg.

Integrazione Desktop

Per configurare il menù in modo che le applicazioni vengano avviate in sandbox, esistono due opzioni.

Singola applicazione

Questa opzione consente di predefinire quali applicazioni avviare in sandbox

Digitare nel terminale:

sudo ln -s /usr/bin/firejail /usr/local/bin/nome_programma

Ad esempio:

sudo ln -s /usr/bin/firejail /usr/local/bin/firefox
sudo ln -s /usr/bin/firejail /usr/local/bin/telegram-desktop

Tutte le applicazioni

Questa opzione permette di avviare tutte le applicazioni in sandbox.

Questa modalità può limitare il funzionamento delle applicazioni, poiché imposta configurazioni estremamente restrittive nell'uso delle applicazioni stesse.

Digitare nel terminale:

sudo firecfg

Profili personalizzati

Ci sono due modalità per personalizzare i profili.

File profile

  1. Creare la cartella ~/.config/firejail.

  2. Copiare i file *.profile da modificare dalla cartella /etc/firejail/ in ~/.config/firejail.

    • Ad esempio:

      cp /etc/firejail/firefox.profile ~/.config/firejail
      cp /etc/firejail/telegram.profile ~/.config/firejail
  3. Aprire con un editor di testo i file *.profile copiati e aggiungere o commentare le righe desiderate.

  4. Salvare e chiudere il file.

File local

  1. Creare la cartella ~/.config/firejail.

  2. Creare i file <nome_programma>.local

    • Ad esempio:

      touch ~/.config/firejail/firefox.local
      touch ~/.config/firejail/telegram.local
  3. Aprire con un editor di testo i file *.local creati.

  4. Scrivere le impostazioni desiderate.
  5. Salvare e chiudere il file.
    • Ad esempio per configurare firefox ad accedere a partizioni montate nel sistema o altri dispositivi, scrivere nel file firefox.local le seguenti righe:

      whitelist /media
      ignore disable-mnt

      Ad esempio per configurare telegram desktop, usato nell'ambiente grafico Xfce, a ignorare le configurazioni di altri ambienti grafici, scrivere nel file telegram.local le seguenti righe:

      ignore dbus-user.talk org.kde.StatusNotifierWatcher
      ignore dbus-user.talk org.gnome.Mutter.IdleMonitor

Al termine riavviare le applicazioni.

Priorità dei file di configurazione

  • Le impostazioni scritte nei file *.profile che sono nella Home hanno priorità superiore rispetto a quelle scritte nei file *.profile in /etc/firejail.

  • Le impostazioni scritte nei file *.local hanno priorità superiore rispetto a quelle scritte nei file *.profile.

Ulteriori risorse


CategorySicurezza CategoryInternet