Esistono diversi modi in cui Selinux può funzionare. Questo è definito dalla politica Selinux. In questa guida, imparerai di più sulle politiche di Selinux e su come impostare una politica in Selinux.
Panoramica dei criteri di Selinux
Facciamo una breve carrellata di Selinux e delle sue politiche. Selinux è l'acronimo di "Linux potenziato dalla sicurezza."Comprende una serie di patch di sicurezza al kernel Linux. Selinux è stato originariamente sviluppato dalla National Security Agency (NSA) e rilasciato nella comunità di sviluppo open source nel 2000 con la licenza GPL. È stato fuso con il kernel Linux principale nel 2003.
Selinux fornisce Mac (controllo degli accessi obbligatorio) anziché il DAC predefinito (controllo di accesso discrezionale). Ciò consente l'implementazione di alcune politiche di sicurezza che non sarebbe possibile implementare altrimenti.
Le politiche di Selinux sono serie di regole che guidano il motore di sicurezza Selinux. Una politica definisce i tipi per oggetti di file e domini per i processi. I ruoli vengono utilizzati per limitare l'accesso ai domini. Le identità dell'utente determinano quali ruoli possono essere raggiunti.
Sono disponibili due politiche Selinux:
I processi che non sono presi di mira verranno eseguiti in un dominio non confinato. I processi in esecuzione in domini non confinati godono di un accesso quasi completo. Se tale processo è compromesso, Selinux non offre alcuna mitigazione. L'attaccante può ottenere l'accesso all'intero sistema e alle risorse. Tuttavia, le regole DAC si applicano ancora per i domini non confinati.
Quello che segue è un breve elenco di esempi di domini non confinati:
Modifica della politica Selinux
I seguenti esempi vengono eseguiti in CentOS 8. Tutti i comandi in questo articolo sono eseguiti come utente root. Per altre distro, controlla il tutorial appropriato su come abilitare Selinux.
Per modificare un criterio in Selinux, inizia controllando lo stato Selinux. Lo stato predefinito dovrebbe essere abilitato Selinux nella modalità "applicazione" con il criterio "mirato".
$ SESTATUS
Per modificare il criterio Selinux, apri il file di configurazione Selinux nel tuo editor di testo preferito.
$ vim/etc/selinux/config
Qui, il nostro obiettivo è la variabile "SelinuxType" che definisce il criterio Selinux. Come puoi vedere, il valore predefinito è "mirato."
Tutti i passaggi dimostrati in questo esempio vengono eseguiti in CentOS 8. Nel caso di CentOS, la politica MLS non viene installata per impostazione predefinita. Questo è anche probabile che sia il caso in altre distro. Scopri come configurare Selinux su Ubuntu qui. Assicurati di installare prima il programma. Nel caso di Ubuntu, CentOS, Opensuse, Fedora, Debian e altri, il nome del pacchetto è “Selinux-Policy-MLS."
$ DNF Installa Selinux-Policy-MLS
In questo caso, passeremo la politica a MLS. Modificare il valore della variabile di conseguenza.
$ SelinuxType = MLS
Salva il file ed esci dall'editor. Per mettere in vigore queste modifiche, è necessario riavviare il sistema.
$ riavvia
Verificare la modifica emettendo quanto segue.
$ SESTATUS
Modifica delle modalità Selinux
Selinux può funzionare in tre diverse modalità. Queste modalità determinano come viene applicata la politica.
Per modificare temporaneamente la modalità in Selinux, utilizzare il comando setenforce. Se il sistema viene riavviato, il sistema tornerà all'impostazione predefinita.
$ setenforce applicazione
$ Setenforced permissive
Per modificare permanentemente la modalità in Selinux, è necessario modificare il file di configurazione Selinux.
$ vim/etc/selinux/config
Salva e chiudi l'editore. Riavvia il sistema per mettere in vigore le modifiche.
È possibile verificare la modifica usando il comando sestatus.
$ SESTATUS
Conclusione
Selinux è un potente meccanismo per far rispettare la sicurezza. Spero che questa guida ti abbia aiutato a imparare a configurare e gestire il comportamento di Selinux.
Felice calcolo!