Ero sivun ”Security-Enhanced Linux” versioiden välillä

Siirry navigaatioon Siirry hakuun
p Turvallisuuspolitiikat
Lokien tarkastelu ja vianmääritys
 
(Yhtä välissä olevaa versiota samalta käyttäjältä ei näytetä)
Rivi 62: Rivi 62:
Monet Linux-komennot näyttävät SELinux-tiedot <tt>Z</tt>-vivulla. Esimerkiksi <tt>ps</tt> ja <tt>ls</tt>.
Monet Linux-komennot näyttävät SELinux-tiedot <tt>Z</tt>-vivulla. Esimerkiksi <tt>ps</tt> ja <tt>ls</tt>.


=== Tiedostojen oikeudet ===
=== Tiedostojen ja prosessien oikeudet ===
SELinuxin avulla voidaan rajoittaa tiedostojen pääsyoikeuksia hienovaraisemmin kuin Unixin tavallisilla käyttöoikeuksilla. Ls-komento tarjoaa tuen näiden pääsyoikeuksien katselemiselle. Tiedostojen SELinux-oikeudet voi listata tällä komennolla:
SELinux lisää käyttöoikeuksiin uuden ulottuvuuden. Tiedostoilla ja prosesseilla on SELinux-konteksti, joka koostuu useista osista järjestyksessä: ''user:role:type:mls''.
 
Ls-komento tarjoaa tuen näiden pääsyoikeuksien katselemiselle. Tiedostojen SELinux-oikeudet voi listata tällä komennolla:
  ls -Z
  ls -Z


Rivi 91: Rivi 93:
</syntaxhighlight>
</syntaxhighlight>
Näin kansion SELinux-tyyppi muutetaan muotoon <tt>httpd_sys_rw_content_t</tt>. Nämä tyypit, kuten muutkin SELinux-asetukset ovat jakelukohtaisia.
Näin kansion SELinux-tyyppi muutetaan muotoon <tt>httpd_sys_rw_content_t</tt>. Nämä tyypit, kuten muutkin SELinux-asetukset ovat jakelukohtaisia.
=== Lokien tarkastelu ja vianmääritys ===
SELinuxin kanssa työskennellessä haastavinta on usein ymmärtää, miksi jokin prosessi tai sovellus estetään ja miten tämä estyminen korjataan (eli miten politiikkaa muokataan).
==== 1. SELinux-lokien sijainti ====
SELinux-tapahtumat kirjoitetaan Linuxin audit-järjestelmän kautta.
* Lokitiedosto: Suurin osa SELinuxin estotapahtumista (AVC-kielto, "Access Vector Cache denied") kirjataan tiedostoon ''/var/log/audit/audit.log''. Vanhemmissa tai muissa jakeluissa lokit voivat löytyä myös tiedostosta'' /var/log/messages'' tai ''/var/log/syslog''.
* Tärkeä avainsana: Lokiviestejä etsiessä kannattaa suodattaa avainsanalla ''SELINUX_ERR'' tai ''denied''.
==== 2. Apuohjelmat lokien tulkintaan ====
Raakojen lokiviestien tulkitseminen on työlästä. Auditing-työkalut muuttavat nämä viestit luettavaan muotoon.
* ausearch (Audit Search): Käytetään audit-lokitiedostojen selaamiseen ja suodattamiseen tiettyjen kriteerien perusteella, kuten SELinuxin kieltämien tapahtumien löytämiseen.
Esimerkki: Haetaan kaikki SELinuxin kieltämät tapahtumat:
# ausearch -m AVC,USER_AVC,SELINUX_ERR -ts today
* audit2why (Audit to Why): Ottaa raa'an lokiviestin syötteenä ja selittää, miksi SELinux esti kyseisen toiminnon. Tämä työkalu auttaa ymmärtämään, mikä politiikan sääntö (tai sen puute) aiheutti kiellon.
Esimerkki: Koko lokitiedoston viestien muuntaminen selityksiksi:
# cat /var/log/audit/audit.log | audit2why
* audit2allow: Varoituksella käytettävä työkalu, joka ottaa lokiviestin ja generoi uuden SELinux-politiikkasäännön, joka sallisi estetyt toiminnot. Tätä työkalua käytetään yleensä viimeisenä keinona tai kun on täysin varma, että sovelluksen toiminnan salliminen on turvallista. Sitä tulisi käyttää harkiten, jotta turvallisuusjärjestelmän tarkoitus ei vesity.
Esimerkki: Lokitietojen perusteella luodaan uusi politiikkamoduuli sallimaan estetyt toiminnot:
# grep "denied" /var/log/audit/audit.log | audit2allow -M myapp_policy
# semodule -i myapp_policy.pp


==Aiheesta muualla==
==Aiheesta muualla==