Selinux su Debian Top 10 Buster

Selinux su Debian Top 10 Buster
Selinux è un sistema di etichettatura per processi e file. I soggetti etichettati l'accesso agli oggetti etichettati è limitato dalle regole che formano politiche. Questo tutorial è un'introduzione alle basi di Selinux che mostrano come configurare e abilitare Selinux su Debian 10 Buster e abilitarlo con alcune informazioni aggiuntive sui comandi popolari.

Prima di iniziare dovrai imparare i seguenti concetti:

Soggetti: processi o utenti.
Oggetti: file o filesystems.

Tipo di applicazione: Su Selinux tutti i soggetti e gli oggetti hanno un identificatore di tipo che termina con _t. "L'applicazione del tipo è l'idea che, in un sistema di controllo degli accessi obbligatorio, l'accesso è regolato attraverso l'autorizzazione in base a un set di regole di accesso a soggetto.

In Selinux, il tipo di applicazione è implementato in base alle etichette dei soggetti e degli oggetti. Selinux di per sé non ha regole che dicono /Bin/Bash può eseguire /bin/ls. Invece, ha regole simili a "Processi con l'etichetta User_t può eseguire file regolari etichettati bin_t."(Source https: // wiki.Gentoo.org/wiki/selinux/type_enforcement)

Controllo di accesso discrezionale (DAC): DAC è il sistema di proprietà e autorizzazione che utilizziamo in Linux per gestire l'accesso a oggetti come file o directory. Il controllo di accesso discrezionale non ha nulla a che fare con Selinux ed è un diverso livello di sicurezza. Per ulteriori informazioni sulle autorizzazioni DAC visitare Linux spiegate.

Controllo degli accessi obbligatorio (MAC): è un tipo di controllo di accesso che limita l'interazione dell'accesso ai soggetti con gli oggetti. Contrariamente al DAC con gli utenti Mac non può cambiare le politiche.
I soggetti e gli oggetti hanno un contesto di sicurezza (attributi di sicurezza) monitorato da Selinux e amministrato in base alle politiche di sicurezza stabilite dalle regole da applicare.


Controllo degli accessi basato sul ruolo (RBAC): è un tipo di controllo di accesso basato su ruoli, può essere combinato con Mac e DAC. Le politiche RBAC rendono la gestione di molti utenti all'interno di un'organizzazione semplice in contrasto con DAC che può derivare nei compiti di autorizzazione individuali, rende più facili l'auditing, la configurazione e gli aggiornamenti delle politiche.

Modalità di applicazione: Selinux limita i soggetti l'accesso agli oggetti in base alle politiche.

Modalità permissiva: Selinux registra solo un'attività illegittima.

Le funzionalità di Selinux includono (elenco di Wikipedia):

  • Pulita separazione della politica dall'applicazione
  • Interfacce politiche ben definite
  • Supporto per le applicazioni interrogando la politica e applicazione del controllo degli accessi (ad esempio, Crond Esecuzione di lavori nel contesto corretto)
  • Indipendenza di politiche specifiche e lingue politiche
  • Indipendenza di specifici formati e contenuti di etichetta di sicurezza
  • Etichette e controlli individuali per oggetti e servizi del kernel
  • Supporto per le modifiche alle politiche
  • Misure separate per la protezione dell'integrità del sistema (tipo di dominio) e della riservatezza dei dati (Sicurezza multilivello)
  • Politica flessibile
  • Controlla l'inizializzazione e l'eredità del processo e l'esecuzione del programma
  • Controlla su file system, directory, file e aperti Descrittori di file
  • Controlla su prese, messaggi e interfacce di rete
  • Controlli sull'uso di "capacità"
  • Informazioni memorizzate nella cache sulle decisioni di accesso tramite Access Vector Cache (AVC)
  • Default-Deny Politica (qualsiasi cosa non esplicitamente specificata nella politica è vietata).

Fonte: https: // en.Wikipedia.Org/Wiki/Security-Enhanced_Linux#Funzionalità

Nota: Gli utenti sono diversi su Selinux e Passwd.

Impostazione di Selinux su Debian 10 Buster

Nel mio caso Selinux è stato disabilitato su Debian 10 Buster. Mantenere Selinux abilitato è uno dei passaggi di base per proteggere un dispositivo Linux. Per conoscere lo stato di Selinux nel dispositivo, eseguire il comando:

/# sestatus

Ho scoperto che Selinux era disabilitato, per abilitarlo è necessario installare alcuni pacchetti prima, dopo un Aggiornamento APT, Esegui il comando:

/# APT Installa Selinux-Basics Selinux-Policy-Default

Se richiesto stampa Y Per continuare il processo di installazione. Correre Aggiornamento APT Dopo aver terminato l'installazione.

Per abilitare Selinux eseguire il seguente comando:

/# Selinux-Activate

Come puoi vedere, Selinux è stato adeguatamente attivato. Per applicare tutte le modifiche è necessario riavviare il sistema come indicato.

Il comando getenforce può essere utilizzato per apprendere lo stato Selinux, se è in modalità permissiva o di applicazione:

/# getenforce

La modalità permissiva potrebbe essere sostituita impostando il parametro 1 (Permissive è 0). È inoltre possibile controllare la modalità sul file di configurazione utilizzando il comando meno:

/# meno/etc/selinux/config

Produzione:

Come puoi vedere, i file di configurazione mostrano la modalità permissiva. Premere Q abbandonare.

Per vedere un contesto di sicurezza o di elaborazione è possibile utilizzare il flag -Z:

/# ls -z

Il formato dell'etichetta è Utente: Ruolo: Tipo: Livello.

Semane - Strumento di gestione delle politiche Selinux

Il semanage è lo strumento di gestione delle politiche Selinux. Consente di gestire i booleani (che consentono di modificare il processo in esecuzione), ruoli e livelli utente, interfacce di rete, moduli di politica e altro ancora. La semanage consente di configurare le politiche di Selinux senza la necessità di compilare fonti. La semanage consente il collegamento tra gli utenti OS e Selinux e alcuni contesti di sicurezza degli oggetti.

Per ulteriori informazioni su semanage, visitare la pagina Man all'indirizzo: https: // linux.morire.net/man/8/semanage

Conclusione e note

Selinux è un ulteriore modo per amministrare l'accesso dai processi alle risorse di sistema come file, partizioni, directory, ecc. Permette di gestire enormi privilegi in base al ruolo, al livello o al tipo. Abilitarlo è un must come misura di sicurezza e quando si utilizza è importante ricordare il proprio livello di sicurezza e riavviare il sistema dopo averlo abilitato o disabilitato (la disabilitazione non è affatto consigliata tranne che per test specifici). A volte un accesso al file viene bloccato nonostante le autorizzazioni del sistema o del sistema operativo siano concesse perché Selinux lo sta proibendo.

Spero che tu abbia trovato questo articolo su Selinux utile come introduzione a questa soluzione di sicurezza, continua a seguire LinuxHint per ulteriori suggerimenti e aggiornamenti su Linux e networking.

Articoli Correlati:

  • Selinux sul tutorial di Ubuntu
  • Come disabilitare Selinux su CentOS 7
  • Elenco di controllo di Linux Security Induring
  • Profili di Apparmor su Ubuntu