A modul neve: mac_mls.ko
A rendszermag konfigurációs
beállítása: options
MAC_MLS
Rendszerindítási beállítás:
mac_mls_load="YES"
A mac_mls(4) (MLS, Multi-Level Security) házirend az információ szigorú áramoltatásával vezérli a rendszerben található alanyok és objektumok közti elérést.
A MLS megoldását alkalmazó környezetekben a rekeszek mellett minden alanyra és objektumra be kell még állítanunk egy adott szintű "engedélyt" is. Mivel az engedélyek avagy az érzékenység szintje akár a hatezret is meghaladhatja, egy rendszergazda számára valódi rémálommá válthat az egyes alanyok és objektumok precíz beállítása. Szerencsére a házirend erre a célra tartalmaz három előre definiált "instant" címkét.
Ezek az mls/low
,
mls/equal
és
mls/high
. Mivel a man oldal elég
részletesen kifejti ezeket, ezért itt csak
érintőlegesen foglalkozunk velük:
Az mls/low
címke egy olyan
alacsony szintű beállítást
képvisel, amely lehetővé teszi, hogy az
összes többi objektum uralja. Tehát
bárminek is adjuk az mls/low
címkét, alacsony szintű engedéllyel
fog rendelkezni és nem lesz képes elérni
a magasabb szinten levő információt.
Ráadásul a címke a magasabb szintű
objektumok számára se fogja engedni, hogy
információt közöljön vagy adjon
át az alacsonyabb szintek felé.
Az mls/equal
címke olyan
objektumok esetében ajánlott, amelyeket ki
akarunk hagyni a házirend
szabályozásaiból.
Az mls/high
címke az
elérhető legmagasabb szintű engedélyt
ábrázolja. Az ilyen címkével
ellátott objektumok a rendszer összes többi
objektuma felett uralommal rendelkeznek, habár az
alacsonyabb szintű objektumok felé nem
képesek információt
közvetíteni.
Az MLS:
Egy hierarchikus védelmi szinteket épít fel nem hierarchikus kategóriákkal.
Szabályai rögzítettek: a felsőbb szintek olvasása és az alsóbb szintek írása egyaránt tiltott (az alanyok csak a saját vagy az alatta levő szinteken levő objektumokat képesek olvasni, de a felette állókat már nem. Ehhez hasonlóan az alanyok a velük egyező vagy a felsőbb szinteket tudják írni, de az alattuk levőket már nem).
Megőrzi a titkokat (megakadályozza az adatok alkalmatlan közzétételét).
Megadja mindazt az alapot, ami szükséges ahhoz, hogy az adatokat több kényességi szinten, párhuzamosan is kezelni tudjuk (anélkül, hogy titkos és bizalmas információkat szivárogtatnánk ki).
A speciális szolgáltatások és
felületek beállításához az
alábbi sysctl
-változók
használhatóak:
A security.mac.mls.enabled
engedélyezi vagy tiltja le az MLS
házirend alkalmazását.
A security.mac.mls.ptys_equal
hatására látja el
mls/equal
címkével az
összes pty(4) eszközt
létrehozásuk során.
A security.mac.mls.revocation_enabled
használható az alacsonyabb szintre
minősített objektumok
hozzáférésének
megvonására.
A security.mac.mls.max_compartments
segítségével adható meg az
objektumok által használt rekeszek
szintjének maximális száma.
Lényegében a rekeszek rendszerben
engedélyezett maximuma.
Az MLS címkéit a setfmac(8) paranccsal tudjuk módosítani. Egy ehhez hasonló paranccsal tudunk egy objektumhoz címkét rendelni:
#
setfmac mls/5 próba
A próba
állomány
MLS-címkéjét az
alábbi paranccsal kérhetjük le:
#
getfmac próba
Ezzel össze is foglaltuk az MLS
házirend lehetőségeit. Az eddigiket úgy
is megoldhatjuk, hogy létrehozunk egy központi
házirendet az /etc
könyvtárban, amelyben megadjuk az
MLS házirendhez tartozó
információkat, majd átadjuk a
setfmac
parancsnak. Erre a módszerre
majd a házirendek bemutatása után kerül
sor.
A többszintű biztonsági házirend használatával a rendszergazda a kényes információk áramlásának irányát tudja befolyásolni. A megoldás "felfele nem lehet olvasni, lefele nem lehet írni" jellege folytán alapból mindent a legalacsonyabb szintre helyez. Így tehát kezdetben minden elérhető, és a rendszergazdának lassanként ebből az állapotból elindulva kell behangolnia az erre alapozó védelmi rendszert az információ bizalmasságának megfelelően.
A fentebb említett három alapvető
címke mellett a rendszergazdának
valószínűleg szüksége lesz a
felhasználók csoportosítására
és a csoportok közti
információáramlás
szabályozására. A információ
bizalmasságának szintjeit minden bizonnyal
könnyebb szavakkal beazonosítani,
például Confidential
(bizalmas), Secret
(titkos) vagy Top
Secret
(szigorúan bizalmas). Bizonyos
helyzetekben elég csak a futó projekteknek
megfelelően kialakítani csoportokat. Az
osztályozás konkrét
módszerétől függetlenül azonban
mindig elmondható, hogy előzetes tervezés
nélkül sose állítsunk össze ilyen
fajsúlyú házirendet.
Ezt a biztonsági modult például webes üzletek esetén érdemes használnunk, ahol egy állományszerver tárolja a cég fontos adatait és pénzügyi információit. Viszont egy két vagy három felhasználóval üzemelő munkaállomás esetében szinte teljesen felesleges gondolkodni rajta.
Ha kérdése van a FreeBSD-vel kapcsolatban, a
következő címre írhat (angolul):
<questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon:
<gabor@FreeBSD.org>.