Modulenaam: mac_partition.ko
Kernelinstelling: options MAC_PARTITION
Opstartoptie: mac_partition_load="YES"
Het beleid mac_partition(4) plaatst processen in specifieke “partities” gebaseerd op hun MAC-label. Zie dit als een speciaal soort jail(8), hoewel dit nauwelijks een waardige vergelijking is.
Dit is één module die aan het bestand loader.conf(5) dient te worden toegevoegd zodat het het beleid tijdens het opstartproces laadt en aanzet.
De meeste configuratie van dit beleid wordt gedaan met het gereedschap setpmac(8), wat hieronder zal worden uitgelegd. De volgende sysctl-tunable is beschikbaar voor dit beleid:
security.mac.partition.enabled zet het afdwingen van MAC-procespartities aan.
Wanneer dit beleid aanstaat, mogen gebruikers alleen hun eigen processen zien, en elke andere in hun partitie, maar mogen niet met gereedschappen buiten deze partitie werken. Bijvoorbeeld, een gebruiker in de klasse insecure heeft geen toegang tot het commando top noch tot vele andere commando's die een proces moeten draaien.
Gebruik het gereedschap setpmac om gereedschappen in te stellen of ze in een partitielabel te plaatsen:
# setpmac partition/13 top
Dit zal het commando top toevoegen aan het label dat voor gebruikers in de klasse insecure gebruikt wordt. Merk op dat alle processen gestart door gebruikers in de klasse insecure in het label partition/13 zullen blijven.
Het volgende commando laat de partitielabel en de proceslijst zien:
# ps Zax
Het volgende commando staat toe om het procespartitielabel van een andere gebruiker en de momenteel draaiende processen van die gebruiker te zien:
# ps -ZU trhodes
Opmerking: Gebruikers kunnen processen in het label van root zien tenzij het beleid mac_seeotheruids(4) is geladen.
Een echte vakmansimplementatie zou alle diensten in /etc/rc.conf uitzetten en deze door een script met de juiste labeling laten starten.
Opmerking: De volgende beleiden ondersteunen integerinstellingen in plaats van de drie standaardlabels die aangeboden worden. Deze opties, inclusief hun beperkingen, worden verder uitgelegd in de handleidingpagina's van de modules.