Security context je asi nejdůležitější vlastnost, o které se SELinux točí. Vzpomeňte si na LIDS a GŘ Security. Když jsme tam identifikovali subjekty a objekty, tak jsme je identifikovali jejich cestou k nim. Tedy pokud to byly soubory. Např. /usr/bin/mc. Toto SELinux nepoužívá, což je ale dobře. Je to jedna z jeho kvalitních vlastností. Místo toho Linux zavádí něco, čemu říká bezpečnostní kontext.
Bezpečnostní kontext si představte jako sadu pěti vlastností, které jsou někde uloženy. Když potřebujete říci, že chcete objekt ten a ten, tak se v SELinuxu neidentifikuje jeho cestou, ale jeho kontextem. Otázka zní, kde je ten kontext uložen? Je to přímo v inodě souboru – v interní datové struktuře souboru. Tedy tak, jak má každý soubor např. vlastníka, tak tak má úloženou informaci, jaký má bezpečnostní kontext.
Z toho ale vyplývá, že SELinux nemůžete uložit na všech souborových systémech, které vás napadnou, protože musí umět uložit rozšířené atributy inodu. Musíte používat souborový systém, který to umí uložit. ext2, ext3, ext4, xfs. Ale například. RiserFS tyto věci standardně neumí udělat.
Bezpečnostní kontext mají všichni, kteří se účastna bezpečnostní politiky, např.:
V případě, že SELinux integrujete do stávajících systémů, postupujeme takto. Když SELinux poprvé nastartujete, je třeba udělat tzv. labeling, kde se podle nějakých pravidel automaticky přiděluje bezpečnostní kontext každému inodu na souborovém systému, který byl vytvořen před instalací SELinuxu. Když už SELinux bude fungovat, tak bude bezpečnostní kontext přidělován podle pravidel, která nastavíte.
Marián Knězek