Utilizzare impostazioni booleane per modificare le impostazioni SELinux del sistema

By | Agosto 14, 2018

Nota: questo è un obiettivo d’esame RHCSA 7.

Presentazione

SELinux usa i booleani per rendere la sua politica più flessibile.

La politica di base è piuttosto severa ma si adatta alla maggior parte dei requisiti. Ma se hai esigenze particolari, puoi facilmente regolarlo grazie ai booleani SELinux.
Gestione standard

Ottieni l’elenco dei booleani di SELinux su un argomento particolare (qui ftp):

# getsebool -a | grep ftp
allow_ftpd_anon_write --> off
allow_ftpd_full_access --> on
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> on
ftpd_connect_db --> off
ftpd_use_fusefs --> off
ftpd_use_passive_mode --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
tftp_use_cifs --> off
tftp_use_nfs --> off

Per impostare un booleano SELinux specifico in base alle tue esigenze (qui ftp_home_dir), digita:

# setsebool -P ftp_home_dir on
or
# yum install -y setroubleshoot-server
# semanage boolean -m --on ftp_home_dir

Nota 1: è possibile utilizzare on o 1, off o 0 con il comando setsebool.
Nota 2: l’opzione -P indica Permanente. Se non lo usi ripristinerà la sua configurazione permanente o predefinita precedente dopo il prossimo riavvio.
Nota3: il comando semanage boolean assegna solo configurazioni permanenti.

Per ottenere un elenco più dettagliato dei booleani SELinux, digitare:

# yum install -y setroubleshoot-server
# semanage boolean -l
SELinux boolean                State  Default Description
ftp_home_dir                   (off  ,  off)  Allow ftp to read and write files in the user home directories
smartmon_3ware                 (off  ,  off)  Enable additional permissions needed to support devices on 3ware controllers.
xdm_sysadm_login               (off  ,  off)  Allow xdm logins as sysadm
xen_use_nfs                    (off  ,  off)  Allow xen to manage nfs files
mozilla_read_content           (off  ,  off)  Control mozilla content access
ssh_chroot_rw_homedirs         (off  ,  off)  Allow ssh with chroot env to read and write files in the user home directories
postgresql_can_rsync           (off  ,  off)  Allow postgresql to use ssh and rsync for point-in-time recovery
allow_console_login            (on   ,   on)  Allow direct login to the console device. Required for System 390
spamassassin_can_network       (off  ,  off)  Allow user spamassassin clients to use the network.
authlogin_shadow               (off  ,  off)  Allow users login programs to access /etc/shadow.
httpd_can_network_relay        (off  ,  off)  Allow httpd to act as a relay
openvpn_enable_homedirs        (on   ,   on)  Allow openvpn to read home directories
...

Nota importante: la colonna Stato(State) mostra rispettivamente la configurazione booleana corrente e la colonna Default la configurazione booleana permanente.

Per ottenere l’elenco di tutti i booleani SELinux con un valore corrente diverso da quello predefinito (opzione -C per la personalizzazione (Custom) locale), digitare:

# semanage boolean -l -C
SELinux boolean                State  Default Description

ftp_home_dir                   (on   ,   on)  Allow ftp to read and write files in the user home directories
httpd_can_sendmail             (on   ,   on)  Allow http daemon to send mail
allow_postfix_local_write_mail_spool (on   ,   on)  Allow postfix_local domain full write access to mail_spool directories
allow_ftpd_full_access         (on   ,   on)  Allow ftp servers to login to local users and read/write all files on the system, governed by DAC.

Per visualizzare l’elenco di booleani di SELinux relativi a NFS, digitare:

# semanage boolean -l | egrep "nfs|SELinux"
SELinux boolean                State  Default Description
xen_use_nfs                    (off  ,  off)  Allow xen to use nfs
virt_use_nfs                   (off  ,  off)  Allow virt to use nfs
mpd_use_nfs                    (off  ,  off)  Allow mpd to use nfs
nfsd_anon_write                (off  ,  off)  Allow nfsd to anon write
ksmtuned_use_nfs               (off  ,  off)  Allow ksmtuned to use nfs
git_system_use_nfs             (off  ,  off)  Allow git to system use nfs
virt_sandbox_use_nfs           (off  ,  off)  Allow virt to sandbox use nfs
logrotate_use_nfs              (off  ,  off)  Allow logrotate to use nfs
git_cgi_use_nfs                (off  ,  off)  Allow git to cgi use nfs
cobbler_use_nfs                (on   ,  off)  Allow cobbler to use nfs
httpd_use_nfs                  (off  ,  off)  Allow httpd to use nfs
sge_use_nfs                    (off  ,  off)  Allow sge to use nfs
ftpd_use_nfs                   (off  ,  off)  Allow ftpd to use nfs
sanlock_use_nfs                (off  ,  off)  Allow sanlock to use nfs
samba_share_nfs                (off  ,  off)  Allow samba to share nfs
openshift_use_nfs              (off  ,  off)  Allow openshift to use nfs
polipo_use_nfs                 (off  ,  off)  Allow polipo to use nfs
use_nfs_home_dirs              (off  ,  off)  Allow use to nfs home dirs
nfs_export_all_rw              (on   ,   on)  Allow nfs to export all rw
nfs_export_all_ro              (on   ,   on)  Allow nfs to export all ro

 

One thought on “Utilizzare impostazioni booleane per modificare le impostazioni SELinux del sistema

  1. Pingback: Obiettivi esame RHCSA 7 - prometheusproject

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.