A modul neve: mac_partition.ko
A rendszermag konfigurációs beállítása: options MAC_PARTITION
Rendszerindítási beállítás: mac_partition_load="YES"
A mac_partition(4) házirend a futó programokat címkéjük szerint adott “partíciókra” osztja szét. Ezt leginkább egy speciális jail(8) megoldásként tudjuk elképzelni, noha teljesen felesleges összehasonlítani a kettőt.
Ez egy olyan modul, amelyet a loader.conf(5) állományba kell felvenni, hogy a rendszerindítása közben be tudjon töltődni.
Ezt a házirendet többségében a setpmac(8) segédprogrammal tudjuk állítgatni, ahogy az majd lentebb látható lesz. A következő sysctl-változó tartozik még a modulhoz:
A security.mac.partition.enabled engedélyezi a futó programok MAC rendszeren keresztüli felosztását.
A házirend engedélyezésével a felhasználók csak a saját programjaikat láthatják, illetve mindazokat, amelyek az övékével egy partícióba tartoznak, de a rajta kívül levő programokkal már nem dolgozhatnak. Például, ha egy felhasználó az insecure (“nem biztonságos”) osztály tagja, akkor ne engedjük, hogy hozzáférhessen a top vagy bármilyen más olyan parancshoz, amely további futó programokat hoz létre.
A setpmac használatával tudunk címkéket készíteni a partíciókhoz és programokat rendelni hozzájuk:
# setpmac partition/13 top
Így a top parancsot hozzáadjuk az insecure osztályban levő felhasználókhoz rendelt címkéhez. Vegyük észre, hogy az insecure osztályba tartozó felhasználók által elindított összes program a partition/13 címkét fogja használni.
A következő parancs megmutatja a partíciók címkéit és a futó programok listáját:
# ps Zax
Ezzel paranccsal pedig megnézhetjük egy másik felhasználó programjainak címkéit és a felhasználó által futtatott programokat:
# ps -ZU trhodes
Megjegyzés: A felhasználók látják a root címkéjével futó programokat is, hacsak be nem töltjük a mac_seeotheruids(4) házirendet.
Ezt a megoldást úgy tudnánk igazán ravaszul felhasználni, ha például az /etc/rc.conf állományban letiltanánk az összes szolgáltatást és egy olyan szkripttel indítanánk el ezeket, amely futtatásuk előtt beállítja hozzájuk a megfelelő címkét.
Megjegyzés: A most következő házirendek a három alapértelmezett címkeérték helyett egész számokat használnak. Ezekről, valamint a rájuk vonatkozó korlátozásokról a megfelelő modulok man oldalain ismerhetünk meg többet.
Ha kérdése van a FreeBSD-vel kapcsolatban, a következő
címre írhat (angolul): <freebsd-questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése,
kérjük erre a címre írjon: <gabor@FreeBSD.org>.