SELinux

„SELinux“ pradedantiesiems, naudojantiems „CentOS“

„SELinux“ pradedantiesiems, naudojantiems „CentOS“
NSA sukurta siekiant užkirsti kelią piktavališkam priėjimui ir įsibrovimams, „Security-Enhanced Linux“ arba „SELinux“ yra pažangi prieigos valdymo funkcija, pristatoma su moderniausiais „Linux“ distros. „SELinux“ apibrėžiama kaip privalomos prieigos kontrolės (MAC) sistema, sukurta kaip diskrecinės prieigos kontrolės sistemos (DAC) pakaitalas.

„SELinux“ gali atrodyti bauginanti ir labai sunkiai įgyvendinama daugumoje šiuolaikinių sistemų. Tačiau sukonfigūravus „SELinux“ yra labai naudinga tiek užtikrinant saugumą, tiek šalinant trikčių šalinimą.

Šioje pamokoje bus aptariamos įvairios „SELinux“ įgyvendinamos sąvokos ir nagrinėjami įvairūs praktiniai „SELinux“ diegimo metodai.

PASTABA: Prieš pradėdami, naudinga naudoti šios mokymo programos komandas kaip šakninį arba sudoers grupės vartotoją.

Įdiekite „SELinux“ paketus

Įdiekime įvairius „SELinux“ paketus, kurie savo ruožtu padės dirbti su „SELinux“ strategijomis.

Prieš pradėdami diegti SELinux paketus, gerai, kad patikrintume, kurie įdiegti dabartinėje sistemoje.

Daugumoje REHL platinimų diegimų kai kurie paketai yra įdiegti pagal numatytuosius nustatymus. Šie paketai apima:

  1. „setools“ - šis paketas naudojamas stebint žurnalus, užklausiant strategijas ir valdant konteksto failus.
  2. policycoreutils-python - teikia pagrindines pitono komunalines paslaugas SELinux valdymui
  3. policycoreutils - šis paketas taip pat teikia komunalines paslaugas SELinux valdymui.
  4. mcstrans - mcstrans pateikia SELinux vertimo demoną, kuris įvairius lygius paverčia lengvai suprantamais formatais, kuriuos galima lengvai suprasti.
  5. setools-console - panašus į setools.
  6. „Selinux-policy“ - ji pateikia nuorodą konfigūruoti „SELinux“ politiką
  7. „Selinux-policy-target“ - panašus į „SELinux-policy“
  8. „Libselinux-utils“ - „SELinux libselinux“ įrankiai, kurie padeda valdyti „SELinux“
  9. „Setroubleshoot-server“ - „SELinux“ trikčių šalinimo įrankiai

Norėdami patikrinti, kurie paketai jau yra įdiegti jūsų sistemoje, galite naudoti komandą rpm -qa ir perduoti rezultatą grep SELinux kaip:

aps. -qa | grep selinux
libselinux-utils-2.9–4.el8_3.x86_64
rpm-plugin-selinux-4.14.3-4.el8.x86_64
selinux-policy-suunatud-3.14.3-54.el8_3.2.noarchas
python3-libselinux-2.9–4.el8_3.x86_64
selinux-policy-3.14.3-54.el8_3.2.noarchas
libselinux-2.9–4.el8_3.x86_64

Tai turėtų suteikti jums visų paketų, įdiegtų SELinux palaikymui, išvestį

Jei jūsų sistemoje nėra įdiegti visi „SELinux“ paketai, naudokite „yum“, kad juos įdiegtumėte, kaip parodyta toliau pateiktoje komandoje:

yum install policycoreutils policycoreutils-python-utils selinux-policy selinux-policy-target libselinux-utils setroubleshoot-server setools setools-console mcstrans

„SELinux“ režimai ir būsenos

Pradėkime dabar žaisti su „SELinux“, būtent „SELinux“ režimais.

„SELinux“ režimai

Įjungus „SELinux“ gali būti trys galimi režimai:

Vykdymo režimas

Jei bus vykdomas „SELinux“ režimas, jis užtikrins, kad jokiam vartotojui ar procesui nebūtų uždrausta neteisėta prieiga prie sistemos. Vykdymo režimas taip pat saugo visų bandymų atlikti neteisėtą prieigą žurnalus.

Leidžiantis režimas

Permisyvus režimas veikia kaip iš dalies įjungta „SELinux“ būsena. Šiuo režimu prieiga nėra uždrausta, nes „SELinux“ nevykdo savo politikos šiame režime. Tačiau leidžiantis režimas registruoja bandymus pažeidinėti politiką. Šis režimas yra labai efektyvus testavimui, prieš jį visiškai įjungiant, nes vartotojai ir komponentai vis tiek gali sąveikauti su sistema, bet vis tiek rinkti žurnalus. Tai leidžia jums tiksliai sureguliuoti sistemą jums tinkamais būdais.

Išjungtas režimas

Neįgaliųjų režimas taip pat gali būti vertinamas kaip išjungta būsena, kai „SELinux“ yra išjungta ir nesiūlo jokio saugumo.

SELinux valstybės

Kai sistemoje bus įdiegta „SELinux“. Jis gali turėti dvejetaines būsenas: įgalintas ir išjungtas. Norėdami peržiūrėti „SELinux“ būseną, naudokite komandą:

getenforce
Neįgalus

Pirmiau pateiktas išvestis rodo, kad SELinux šiuo metu yra išjungtas.

Taip pat galite naudoti komandą sestatus, kaip parodyta žemiau:

sestatus
„SELinux“ būsena: išjungta

Įgalinti ir išjungti „SELinux“

„SELinux“ būsenas ir konfigūraciją tvarko konfigūracijos failas, esantis aplanke / etc / selinux / config. Norėdami peržiūrėti jos turinį, galite naudoti komandą katė.

katė / etc / selinux / config
#Šis failas valdo SELinux būseną sistemoje.
# SELINUX = gali būti viena iš šių trijų reikšmių:
#enforcing - vykdoma SELinux saugos politika.
#permissive - „SELinux“ spausdina įspėjimus, o ne vykdo.
#disabled - nėra įkelta jokia „SELinux“ politika.
SELINUX = vykdymas
# SELINUXTYPE = gali būti viena iš šių trijų reikšmių:
# tikslinis - tiksliniai procesai yra apsaugoti,
# minimum - tikslinės politikos pakeitimas. Apsaugoti tik pasirinkti procesai.
# mls - kelių lygių saugumo apsauga.
SELINUXTYPE = tikslinė

Iš pirmiau pateiktų rezultatų turime dvi pagrindines direktyvas. SELINUX direktyva nurodė režimą, kuriuo sukonfigūruotas SELinux. SELINUXTYPE direktyva nurodo SELinux strategijos rinkinį. Pagal numatytuosius nustatymus „SELinux“ naudoja tikslinę politiką, leidžiančią tinkinti prieigos valdymo leidimus. Kita politika yra daugiapakopis saugumas arba MLS.

Kai kuriose versijose galite rasti minimalią politiką.

CD / etc / selinux /
[ls -l
iš viso 4
-rw-r - r-- 1 šaknies šaknis 548 Vasario 16 22:40 konfig
drwxr-xr-x 1 šaknies šaknis 4096 vasario 16 22:43 mls
-rw-r - r-- 1 šaknies šaknis 2425 2020 m. liepos 21 d. semanage.konf
drwxr-xr-x 1 šaknies šaknis 4096 Vasario 16 22:40 tikslinė

Pažiūrėkime, kaip sistemoje įgalinti „SELinux“. Pirmiausia rekomenduojame nustatyti „SELINUX“ režimą į leistiną ir nevykdomą.

nano / etc / selinux / config

Dabar redaguokite SELINUX direktyvą taip:

SELINUX = leidžiantis

Išsaugoję failą, iš naujo paleiskite sistemą.

perkraukite

PASTABA: Prieš vykdant SELinux, labai rekomenduojame nustatyti leidžiančią SELINUX direktyvą.

Perkraukę sistemą patikrinkite, ar nėra žurnalų, apie kuriuos praneša SELinux aplanke / var / log / messages.

Tada įsitikinkite, kad neturite klaidų, ir vykdykite „SELinux“ nustatydami direktyvą, kad ji būtų vykdoma aplanke / etc / selinux / config

Galiausiai galite peržiūrėti SELinux būseną naudodami komandą sestatus:

„SELinux“ būsena: įjungta
SELinuxfs mount: / sys / fs / selinux
SELinux šakninis katalogas: / etc / selinux
Įkeltas politikos pavadinimas: tikslinis
Dabartinis režimas: vykdymas
Režimas iš konfigūracijos failo: klaida (pavyko)
Politikos MLS būsena: įgalinta
Politikos „deny_unknown“ būsena: leidžiama
Atminties apsaugos tikrinimas: faktinis (saugus)
Maksimalaus branduolio politikos versija: 31

Taip pat galite naudoti komandą setenforce, kad perjungtumėte įvairius „SELinux“ režimus. Pavyzdžiui, norėdami nustatyti, kad režimas būtų leistinas, naudokite komandą:

setenforce leistinas

Šis režimas yra laikinas ir bus perkeltas į vieną iš konfigūracijos failo.

sestatus SELinux būsena: įjungta
SELinuxfs mount: / sys / fs / selinux
SELinux šakninis katalogas: / etc / selinux
Įkelta politikos pavadinimas: taikoma
Dabartinis režimas: leidžiantis
Režimas iš konfigūracijos failo: vykdymas
Politikos MLS būsena: įgalinta
Politikos „deny_unknown“ būsena: leidžiama
Atminties apsaugos tikrinimas: faktinis (saugus)
Maksimalaus branduolio politikos versija: 31

„SELinux“ politika ir kontekstas

Kad išvengtume painiavos pradedantiesiems „SELinux“, nesigilinsime į tai, kaip įgyvendinama „SELinux“ politika, o tiesiog paliesime ją, kad suteiktume idėją.

„SELinux“ veikia įgyvendindama saugumo politiką. „SELinux“ politika nurodo taisyklę, kuri naudojama apibrėžti kiekvieno sistemos objekto prieigos teises. Objektai nurodo vartotojus, procesus, failus ir vaidmenis.

Kiekvienas kontekstas apibrėžiamas vartotojo forma: vaidmuo: tipas: lygis.

Pavyzdžiui, sukurkite katalogą savo namų kataloge ir peržiūrėkite jo SELinux saugos kontekstą, kaip parodyta toliau pateiktose komandose:

mkdir ~ / linuxhint_dir
ls -Z ~ / | grep linuxhint

Tai parodys išvestį, kaip parodyta žemiau:

unconfined_u: object_r: user_home_t: s0 linuxhint_dir

Taip pat galite rasti kitų katalogų su saugos kontekstais:

sistema: _u: object_r: user_home_t: s0

Galite suprasti, kad pirmiau pateiktas išvestis atitinka vartotojo sintaksę: role: type: level.

Išvada

Tai buvo „SELinux“ pradedančiųjų pamoka, naudojant „CentOS 8“. Nors mokymo programa skirta pradedantiesiems, to pakanka, kad jūsų kojos veiktų „SELinux“ ir pašalintų bauginantį „SELinux“ pobūdį.

Ačiū, kad skaitėte.

Geriausi žaidimai, kuriuos reikia žaisti naudojant rankos stebėjimą
„Oculus Quest“ neseniai pristatė puikią rankos stebėjimo be valdiklių idėją. „Oculus Quest“ rankų sekimo žaidimai iki šiol buvo ribojami, kai žaidimų ...
Kaip rodyti OSD perdangą viso ekrano „Linux“ programose ir žaidimuose
Žaisdami viso ekrano žaidimus arba naudodamiesi programomis be išsiblaškymo viso ekrano režimu, galite nutraukti nuo susijusios sistemos informacijos,...
5 geriausios žaidimų fiksavimo kortos
Visi mes matėme ir pamėgome srautinius žaidimus „YouTube“. „PewDiePie“, „Jakesepticye“ ir „Markiplier“ yra tik vieni iš geriausių žaidėjų, kurie uždir...