Questo articolo è per Amanda Enterprise (AE)

Controllo della modalità SELinux

È possibile ottenere la configurazione corrente della modalità SELinux eseguendo getenforce o sestatus come utente root. Il primo stampa semplicemente "Enforcing" o "Permissive" su stdout. Quest'ultimo fornisce dettagli aggiuntivi, incluso il punto di montaggio di SELinuxfs, la modalità corrente, la modalità come appare nel file di configurazione di SELinux, ecc.

La modalità SLELinux può essere modificata dall'utente root durante il runtime utilizzando l'applicazione setenforce.

Utilizzo:

setenforce [Enforcing | Permissivo | 1 | 0]

È importante ricordare che le modifiche apportate utilizzando sentenforce non sono persistenti al riavvio del sistema.

Se SELinux è impostato su permissivo, invece che disabilitato, qualsiasi applicazione compatibile con SELinux si comporterà come se la modalità di applicazione fosse ancora impostata. SELinux continuerà anche a controllare l'attività delle applicazioni mentre è in modalità permissiva. Questa è la differenza principale tra l'utilizzo della modalità permissiva e la disabilitazione completa di SELinux.

Il valore predefinito di modalità all'avvio del sistema è definito nel file / etc / selinux / config dal parametro SELINUX. Il parametro SELINUX accetta enforcing, permissive o disabilitato.

Per esempio:

root> # cat / etc / selinux / config # Questo file controlla lo stato di SELinux sul sistema. # SELINUX = può assumere uno di questi tre valori: # enforcing - La politica di sicurezza di SELinux viene applicata. # permissivo - SELinux stampa avvisi invece di applicare. # disabilitato - Non viene caricata alcuna policy SELinux. SELINUX = imporre # SELINUXTYPE = può assumere uno dei tre due valori: # mirato - I processi mirati sono protetti, # minimo - Modifica della politica mirata. Solo i processi selezionati sono protetti. # mls - Protezione Multi Level Security. SELINUXTYPE = root mirato> #

Se ti viene mai richiesto di risolvere un problema in cui la modalità SELinux passa costantemente a una modalità imprevista all'avvio, vale la pena notare che SELinux può anche essere configurato in grub.conf impostando il parametro enforcing su 0 o 1 (permissivo o far rispettare, rispettivamente).

Configurare SELinux per funzionare bene con Amanda

Poiché la funzione principale di SELinux è di imporre il controllo di accesso obbligatorio, potrebbe richiedere passaggi aggiuntivi per eseguire Amanda se SELinux non è disabilitato o in modalità permissiva

Le versioni moderne di Zmanda (Amanda Enterprise Edition) tenteranno di impostare automaticamente SELinux in modalità permissiva al momento dell'installazione.

root> # ./amanda-enterprise-3.4-linux-x64.run L'installazione di Zmanda richiede il passaggio di SELinux allo stato Permissive. Lo stesso programma di installazione lo farà e lo ripristinerà al suo stato originale una volta terminata l'installazione. Vuoi continuare? [S / n]:

L'installer di Zmanda usa l'applicazione semanage per farlo, quindi assicurati che semanage sia installato controllando ad esempio quale semanage prima di eseguire l'installer. Se semanage non è già installato, puoi ottenere l'applicazione con:

root> # yum fornisce * / semanage {output aggiuntivo non mostrato} root> # yum install 

Durante la risoluzione dei problemi di installazioni di Amanda / Zmanda in ambienti che implementano SELinux, se possibile, provare a impostare temporaneamente SELinux in modalità permissiva. Riprova i tuoi test per confermare che SELinux è, in effetti, la causa del problema e per generare voci di registro di controllo.

Se non è possibile eseguire SELinux in modalità permissiva a causa della tua politica di sicurezza, ci sono alcuni indicatori che SELinux sta interferendo con il normale funzionamento di Amanda. Puoi controllare i log di controllo per le voci relative ad amanda e / o zmanda:

root> # ausearch -m avc -c amanda

Se non riesci a trovare voci di registro riguardanti SELinux che nega Amanda, ma non ci sono problemi quando si esegue in modalità permissiva, allora potrebbe essere il risultato delle regole di dontaudit. Per disabilitare temporaneamente le regole di dontaudit puoi eseguire:

radice> # semodulo -DB

Una volta eseguito, prova a eseguire nuovamente l'installazione, il backup o il ripristino e controlla il registro di controllo. Dopo che SELinux ha registrato i dinieghi applicabili, assicurati di riattivarli dontaudit regole:

radice> # semodulo -B

Alcuni sistemi operativi sono dotati di moduli di policy preinstallati per Amanda che potrebbero non riflettere i contesti corretti per la tua versione di Amanda. Puoi verificare quale modulo è attualmente incluso utilizzando:

radice> # semodulo -l | grep amanda

Potrebbero essere necessari alcuni istanti per elencare tutti i moduli installati e, naturalmente, se non ci sono moduli corrispondenti a "amanda", non ci sarà alcun output. Se trovi che stai eseguendo un modulo di policy Amanda vecchio o danneggiato, puoi rimuoverlo usando:

radice> # semodulo -r 

Tutti i contesti di SELinux possono essere configurati manualmente, ma questo è al di fuori dello scopo di questa documentazione. Se sei interessato a una soluzione completamente manuale, dovresti fare riferimento alle pagine man di chcon e restorecon per informazioni dettagliate.

Creazione di pacchetti di criteri personalizzati con audit2allow

Nella maggior parte degli ambienti ci sono un certo numero di macchine client Amanda che eseguono sistemi operativi simili e occasionalmente è necessario distribuire server Amanda aggiuntivi. Non è efficiente risolvere manualmente i problemi e modificare i contesti di sicurezza su ogni singola macchina in questi scenari. È qui che uno strumento chiamato audit2allow può essere utile per creare pacchetti di criteri personalizzati che possono essere distribuiti su più macchine sulla rete.

Innanzitutto, esegui le tue attività in modalità permissiva e crea un file di imposizione del tipo:

root> # grep -E 'amanda | zmanda' /var/log/audit/audit.log | audit2allow -m myamanda> myamanda.te

Una volta creato il file di imposizione del tipo, assicurati che sia controllato da un operatore. Modificare l'output generato automaticamente come richiesto dal dipartimento di sicurezza delle informazioni.

Quando si verifica il file di imposizione del tipo, ricordare: molte applicazioni forniranno il contesto di sicurezza SELinux per mezzo di uno switch -Z. Ad esempio, "ls, -Z", "ps axZ" e così via.

Una volta verificato che il file di imposizione del tipo soddisfa i requisiti della policy di sicurezza, deve essere convertito in un pacchetto di policy da includere come modulo di policy attivo. Per fare ciò, puoi eseguire i seguenti comandi:

root> # checkmodule -mo myamanda.mod myamanda.te root> # semodule_package -m myamanda.mod -o myamanda.pp

Per caricare il modulo dei criteri, dovresti quindi eseguire:

radice> # semodulo -i myamanda.pp

Se ricevi un errore che hai "Ho provato a collegarmi a un modulo non MLS con una base MLS" dovrai invece convertire il file di imposizione del tipo come sicurezza a più livelli e includere il pacchetto di criteri risultante in questo modo:

root> # checkmodule -M -m -o myamanda.mod myamanda.te root> # semodule_package -m myamanda.mod -o myamanda.pp

E poi includi il pacchetto di policy usando il semodule -i come descritto sopra. Ora dovresti essere configurato per eseguire i tuoi backup e ripristini con SELinux in modalità di applicazione.