Руководство FreeBSD
Пред. | Глава 15. Принудительный контроль доступа (MAC) | След.

# 15.16. Решение проблем с инфраструктурой MAC

На стадии разработки несколько пользователей сообщали о проблемах при обычных настройках. Некоторые из этих проблем приведены ниже:

## 15.16.1. Параметр multilabel не может быть включен на `/`

Параметр multilabel не включается на моем корневом (`/`) разделе!

Похоже, что каждый пятидесятый пользователь сталкивается с этой проблемой; на самом деле, и у нас была эта проблема в первых настройках. Дальнейшие наблюдения за этой так называемой ''ошибкой'' привели меня к мнению, что это результат или некорректной документации, или неправильной интерпретации этой документации. Независимо от того, почему это случилось, для решения этой проблемы могут быть предприняты следующие шаги:

1. Отредактируйте `/etc/fstab` и установите для корневого раздела параметр только для чтения (ro).

2. Перегрузитесь в однопользовательский режим.

3. Запустите команду `tunefs` -l enable на `/`.

4. Перегрузите систему в нормальный режим.

5. Запустите `mount` -urw `/` и измените параметр ro обратно на rw в `/etc/fstab`; перегрузите систему опять.

6. Дважды проверьте вывод `mount`, чтобы убедиться, что параметр multilabel был установлен на корневой файловой системе.

## 15.16.2. Не могу запустить XFree86™ после MAC

После настройки системы безопасности MAC, я больше не могу запускать XFree86™!

Это может быть вызвано политикой MAC partition или путем неправильной установки меток одной из политик MAC. Для отладки попробуйте следующее:

1. Просмотрите сообщение об ошибке; если пользователь находится в классе insecure, проблема может быть в политике partition. Попробуйте установить класс пользователя обратно в default и пересобрать базу данных командой `cap_mkdb`. Если это не решит проблемы, попробуйте шаг два.

2. Дважды проверьте политики с метками. Убедитесь, что политики настроены правильно для рассматриваемого пользователя, приложения XFree86, и устройств в `/dev`.

3. Если проблема не решена, отправьте сообщение об ошибке и описание вашей системы в список рассылки TrustedBSD, находящийся на веб сайте TrustedBSD или в Список рассылки, посвящённый вопросам и ответам пользователей FreeBSD.

## 15.16.3. Error: _secure_path(3) cannot stat `.login_conf`

При попытке переключения от `root` на другого пользователя системы, появляется сообщение об ошибке ```_secure_path: unable to state .login_conf`''.

Это сообщение обычно показывается, когда у пользователя более высокая метка, чем у пользователя, которым он пытается стать. Например, у пользователя системы `joe` метка по умолчанию biba/low. Пользователь `root`, метка которого biba/high, не может просматривать домашний каталог пользователя `joe`. Это не зависит от того, использует ли пользователь `root` команду `su` `joe` или нет. В этом сценарии модель целостности Biba не позволит `root` просматривать объекты с низким уровнем целостности.

## 15.16.4. Пользователя `root` нет!

В нормальном или даже однопользовательском режиме `root` не обнаруживается. Команда `whoami` возвращает 0 (нуль) и `su` возвращает ```who are you?`''. Что можно сделать?

Это может произойти, если политика с метками была отключена, или через sysctl(8), или путем выгрузки модуля политики. Если политика была постоянно или временно отключена, базу данных login необходимо перенастроить. Дважды проверьте `login.conf`, чтобы убедиться, что все параметры label были удалены и пересоберите базу данных командой `cap_mkdb`.

Пред. | Начало | След.
Другой пример: Использование MAC для защиты веб сервера | Уровень выше | Устройства хранения

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.