Sobes.tech
Middle+

Pe CentOS Linux, cum gestionați plafonul (limitatorii)? Este întotdeauna dezactivat sau activ?

sobes.tech AI

Răspuns de la AI

SeLinux (Security-Enhanced Linux) este un mecanism de control al accesului obligatoriu (MAC). În mod implicit, este activ și funcționează într-unul dintre următoarele moduri:

  • Enforcing: Aplicarea forțată a politicilor de securitate. Fiecare operație interzisă este blocată.
  • Permissive: Operațiile interzise nu sunt blocate, dar sunt generate avertismente și înregistrate în jurnale.
  • Disabled: SeLinux este complet dezactivat.

În practică, încerc să mențin SeLinux activ în modul Enforcing pe serverele de producție. Acest lucru adaugă un nivel suplimentar de securitate. Dezactivarea SeLinux este o măsură extremă, utilizată doar pentru depanare sau în medii specifice și complet controlate.

Pentru gestionarea SeLinux, folosesc următoarele comenzi:

  • Verificarea stării și modului curent:
    sestatus
    # Starea SeLinux și modul curent
    
  • Comutarea între moduri (fără repornire):
    setenforce 0 # Mod permissiv
    setenforce 1 # Mod enforcing
    
  • Modificarea modului implicit (necesită repornire), editând /etc/selinux/config:
    nano /etc/selinux/config
    # Schimbarea SELINUX=enforcing în permissive sau disabled
    
  • Gestionarea setărilor boolean (permit sau interzice anumite politici):
    getsebool -a # Lista tuturor booleanilor
    setsebool -P <nume_boolean> on/off # Setare boolean permanent (-P)
    

Atunci când configurez servicii sau aplicații noi, care nu sunt compatibile cu politica actuală SeLinux, prefer să creez sau să actualizez o politică locală (modul) în loc să dezactivez complet SeLinux. Aceasta este o abordare mai sigură.

Pașii pentru crearea unei politici locale:

  1. Instalarea utilitarelor necesare:
    yum install policycoreutils policycoreutils-python
    
  2. Punerea SeLinux în modul Permissive pentru monitorizarea încălcărilor:
    setenforce 0
    
  3. Executarea acțiunilor care cauzează încălcări.
  4. Generarea politicii pe baza logurilor audit.log:
    grep <nume_serviciu> /var/log/audit/audit.log | audit2allow -M politica_serviciu_meu
    
    unde <nume_serviciu> este numele serviciului care cauzează încălcări.
  5. Instalarea politicii generate:
    semodule -i politica_serviciu_meu.pp
    
  6. Reintroducerea SeLinux în modul Enforcing:
    setenforce 1
    

Astfel, strategia mea este să folosesc SeLinux în modul Enforcing și să îl ajustează după necesitate.