La politica di SELinux descrive i permessi di accesso per tutti gli utenti, programmi, processi, file e dispositivi su cui agiscono. SELinux implementa una delle due diverse politiche:
- mirato :questa norma predefinita applica i controlli di accesso a determinati processi (mirati).
- MLS :Sicurezza multilivello
Selezionare il tipo di politica dalla GUI di SELinux o impostare la direttiva SELINUXTYPE nel file /etc/selinux/config. Esempio:
# vim /etc/selinux/config SELINUXTYPE=targeted
Con la politica mirata, i processi mirati vengono eseguiti nel proprio dominio, chiamato dominio confinato. In un dominio confinato, i file a cui ha accesso un processo mirato sono limitati. Se un processo confinato viene compromesso da un utente malintenzionato, anche l'accesso dell'attaccante alle risorse e il possibile danno che può causare è limitato. SELinux nega l'accesso a queste risorse e registra il rifiuto.
Solo servizi specifici vengono inseriti in questi distinti domini di sicurezza che sono limitati dalla policy. Ad esempio, un utente viene eseguito in un dominio completamente non confinato mentre i servizi che ascoltano su una rete le richieste dei client, come named, httpd e sshd, vengono eseguiti in un dominio specifico e confinato adattato al suo funzionamento. Anche i processi che vengono eseguiti come utente root di Linux ed eseguono attività per gli utenti, come l'applicazione passwd, sono limitati.
I processi non presi di mira vengono eseguiti in un dominio non confinato. Le regole della politica di SELinux consentono l'accesso a quasi tutti i processi in esecuzione in domini non confinati. Se un processo non confinato viene compromesso, SELinux non impedisce a un utente malintenzionato di ottenere l'accesso alle risorse e ai dati del sistema. Le regole DAC si applicano ancora in un dominio non confinato. I seguenti sono esempi di domini non confinati:
- dominio initrc_t :i programmi init vengono eseguiti in questo dominio non confinato.
- dominio kernel_t :i processi del kernel non confinati vengono eseguiti in questo dominio.
- dominio non confinato_t :gli utenti Linux hanno effettuato l'accesso al sistema eseguito in questo dominio.
Molti domini protetti da SELinux hanno pagine di manuale che descrivono come personalizzare le loro politiche. La configurazione di ogni policy è installata in /etc/selinux/[SELINUXTYPE] directory. L'esempio seguente mostra un elenco parziale di /etc/selinux directory con le politiche di destinazione e MLS installate:
# ll -lrt /etc/selinux/ total 16 -rw-r--r--. 1 root root 546 Jan 1 2017 config drwxr-xr-x. 2 root root 6 Aug 4 2017 tmp -rw-r--r--. 1 root root 2321 Aug 4 2017 semanage.conf drwxr-xr-x. 7 root root 4096 Feb 19 19:20 targeted drwx------. 2 root root 6 Feb 19 19:20 final drwxr-xr-x. 7 root root 4096 Mar 5 16:39 mls
Il criterio di destinazione è installato per impostazione predefinita, ma il criterio MLS non lo è. Per utilizzare la politica MLS, installa il pacchetto selinux-policy-mls:
# yum install selinux-policy-mlsGuida per principianti a SELinux
Come disabilitare o impostare SELinux in modalità permissiva
Come verificare se SELinux è abilitato o disabilitato
Come abilitare/disabilitare le modalità SELinux in RHEL/CentOS
Cosa sono le modalità SELinux e come impostarle