Имя модуля: mac_partition.ko
Строка настройки ядра: options MAC_PARTITION
Параметр загрузки: mac_partition_load="YES"
Политика mac_partition(4)
распределяет процессы по ``разделам'' на основе их MAC
меток. Это может быть представлено как особый тип jail(8), хотя такое
сравнение едва ли подходит.
Этот модуль должен быть добавлен в loader.conf(5), чтобы
политика была загружена и включена при загрузке системы.
Большая часть настройки этой политики выполняется с помощью утилиты setpmac(8), которая
будет описана ниже. Для данной политики имеется также следующая переменная sysctl:
Когда эта политика включена, пользователям разрешено просматривать только собственные
процессы, но не разрешено пользоваться определенными утилитами. Например, пользователю из
класса insecure выше не будет разрешено использование команды
top, а также многих других команд, которые должны порождать
процесс.
Для присвоения утилитам меток partition используйте утилиту setpmac:
# setpmac partition/13 top
Команда top будет добавлена к метке, установленной для
пользователей класса insecure. Обратите внимание, что все
процессы, порожденные пользователями класса insecure,
останутся с меткой partition/13.
Следующая команда покажет вашу метку раздела и список процессов:
# ps Zax
Следующей командой можно просмотреть метку раздела процессов других пользователей и их
запущенные процессы:
# ps -ZU trhodes
Замечание: Пользователи могут могут увидеть процессы root, если не загружена политика mac_seeotheruids(4).
Действительно ``продвинутая'' реализация должна отключать все сервисы через /etc/rc.conf и запускать их через скрипт, который установит
правильный набор меток.
Замечание: Следующие политики поддерживают целочисленные установки вместо трех
меток по умолчанию. Эти опции, включая их ограничения, описываются более подробно в
страницах справочника модулей.