TOMOYO Linux (Русский)

From ArchWiki
Jump to: navigation, search

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki

Tango-dialog-warning.pngИнформация в этой статье или разделе устарелаTango-dialog-warning.png

Причина: rc.d references. Needs update, see Systemd (Русский). (Обсудить)

TOMOYO Linux это имплиментация системы управления доступом (MAC) Разработка началась в 2003 году и поддерживается NTT Data Corporation. TOMOYO Linux позволяет устанавливать рамки каждому процессу в системе, и может быть использован для ограничения доступа, как и для анализа поведения.

Для обеспечения безопасности TOMOYO Linux может быть использован для "MAC,который закрывает все практические цели для большинства пользователей и остается достаточно управляемым для системных администраторов". TOMOYO Linux не предназначен для профессионалов в области компьютерной безопасности, но инструмент для продвинутых пользователей и системных администраторов.

Примечание: Эта страница не предполагает исчерпывающую инструкцию и должно быть использовано в качестве поддержки к основной документации Руководство пользователя поддерживаемой вместе с проектом.
Tip: TOMOYO Linux 2.x уже включена в репозитории [community] Arch Linux. Эта ветвь разработки уже близка к возможностям ветки 1.x, но ветка 2.х проще для установи. TOMOYO Linux 1.x для тех кому нужна более сильная система безопасности, пока AKARI где то между.

Введение

TOMOYO Linux делает попытку сделать систему, в которой все происходит по ожидаемому, простому пути:

  • Сделать все запросы к ядру, которые происходят в системе уже ожидаемыми.
  • Позволить администратору составлять правила системы безопасности, которые разрешают только ожидаемые действия.

В отличии от AppArmor, TOMOYO Linux предназначен для защиты всей системы от атакующего который использует уязвимости в прикладных программах. TOMOYO Linux сопоставляет действия приложения, полученные в ходе тестового запуска с теми что происходит в реальных условиях, тем самым записывая или\и блокируя подозрительную активность..

TOMOYO Linux не для тех пользователь, которые ждут готовую систему правил подставляемую кем либо.Использование TOMOYO Linux требует создания правил безопасности и нуля в особом "режиме обучения" в котором система будет автоматически создавать файлы правил которые содержат необходимые и достаточные настройки доступа уникальные для отдельной системы. TOMOYO Linux отчитывается об о всём что происходит с системой и может быть использованы для аналитики. Это включает трассировку и отчеты, что было запущено каждой прикладной программой и какие попытки доступа к сетям или файлам были сделаны.

Таблица сравнения TOMOYO Linux с AppArmor, SELinux и SMACK.


Разрабатываемые ветки

TOMOYO Linux 1.x исходная ветвь разработки. Первый официальный релиз TOMOYO Linux произошел 11 Ноября 2005. Он был выполнен в виде патча к ядру и в настоящее время находится в активной стадии разработки и может сосуществовать с другими системами безопасности, такими как SELinux, SMACK и AppArmor.

TOMOYO Linux 2.x В Июне 2009 года была включена в состав ядра 2.6.30 и использует стандартный механизм Linux Security Module (LSM). Однако , возможностей LSM недостаточно, что бы в полной мере реализовать TOMOYO Linux. По этому разные ветки кода не могут иметь одинаковый функционал. Это сравнение двух веток.

AKARI Основный на 1.х ветке TOMOYO Linux проект выполненный в виде загружаемого модуля ядра(LKM). Это дает преимущество в том что пользователю не нужно накладывать патч на ядро и пересобирать ядро. Эта таблица содержит сравнение AKARI с TOMOYO Linux 1.x и 2.x.

TOMOYO Linux 1.x

Реализация TOMOYO Linux 1.x используя модифицированное ядро предостовляет полный функционал TOMOYO Linux. На ядро необходимо наложить патч.

Необходимо модифицированное ядро kernel26-ccs и установленный набор прикладных утилит. Модифицированное ядро и набор утилит можно установить через AUR Ядро kernel-ccs и пакет утилит ccs-tools.


Начальная настройка

В первую очередь нужно инициализировать правила безопасности:

# /usr/lib/ccs/init_policy

Правила безопасности находятся в директории /etc/css/ и могут быть настроены запуском:

# ccs-editpolicy

AKARI

Ограничения AKARI

AKARI имеет преимущество в том что для него не требуется модифицироанное ядро. Если вам необходим TOMOYO Linux в большей степени для исследования системы, то AKARI - это простейший метод достижения. Однако, всё же некоторые условия должны быть соблюдены. При конфигурации ядра, должны быть установлены следующие опции в .config:

CONFIG_SECURITY=y [требуется]
CONFIG_KALLSYMS=y [требуется]
CONFIG_PROC_FS=y [требуется]
CONFIG_MODULES=y [требуется]
CONFIG_SECURITY_PATH=y [опционально: для использования абсолютных путей]
CONFIG_SECURITY_NETWORK=y [опционально: для использования сетевых ограничений]
  • Настройка сложных сетевых ограничении невозможна по причине отсутствия нужной функциональности в LSM
  • Использование wikipedia:Capability-based_security не возможно.
  • Возможно некоторое снижение производительности по сравнению с TOMOYO Linux 1.x
Примечание: Ядро Arch Linux начиная с 2.6.36 уже содержит все требуемые опции, для полной функциональности.

Установка

AKARI и набор прикладных утилит должны быть установлены в первую очередь. Пакет AKARI и пакет с утилитами ccs-tools доступны в AUR.

Параметры загрузчика должны быть изменены для инициализации AKARI:

Пример для GRUB Legacy

title  Arch Linux
root   (hd0,0)
kernel /boot/vmlinuz26 root=/dev/sda1 ro init=/sbin/ccs-init
initrd /boot/kernel26.img

Начальная настройка

В первую очередь нужно инициализировать правила безопасности:

# /usr/lib/ccs/init_policy --module_name=akari

Правила безопасности находятся в директории /etc/css/ и могут быть настроены запуском:

# ccs-editpolicy

TOMOYO Linux 2.x

Ограничения TOMOYO Linux 2.x

Имплементция TOMOYO Linux 2.x включена в основную ветку разработки ядра Linux, но всё еще не полна, но всё еще эффективна для управления доступом к файлам, но всё ещё не поддерживает следующие аспекты:

  • атрибуты файлов и управление пространством имен.
  • capabilities
  • сеть.
  • сигнал.
  • переменные окружения.
  • резервация порта.

Установка

TOMOYO Linux 2.x часть ядра Linux и требует следующие опции в дополнение к названым ранее :

CONFIG_SECURITY_TOMOYO=y
Примечание: Ядро Arch Linux начиная с 2.6.36 уже содержит все требуемые опции, для полной функциональности.

Так как поддержка в ядре уже есть необходимо установить только набор прикладных утилит:

  1. pacman -S tomoyo-tools

Для ядер начиная с 2.6.30 до 2.6.35, необходимо использовать tomoyo-tools 2.2.x. Пакет доступен в AUR

Начальная настройка

В первую очередь должны быть инициализированы политики безопасности:

# /usr/lib/tomoyo/init_policy

Политики безопасности находятся в директории /etc/tomoyo/ и могут быть настроены запуском:

# tomoyo-editpolicy

Использование

Важно обратиться к документации TOMOYO Linux или AKARI:

Запустите редактор политик для начала настройки. Если используется TOMOYO Linux 1.x или AKARI тогда должны быть использованы утилиты ccs-tools:

# /usr/sbin/ccs-editpolicy

Если используется TOMOYO Linux 2.x тогда следует использовать tomoyo-tools:

# /usr/sbin/tomoyo-editpolicy

Как только система запустится , TOMOYO Linux создаст домены и построит из них древо.Доступ к возможностям аналитики и ограничения применяется через домены. Каждый процесс начинает с одного домена, и имя домена будет передан по наследству запущенным процесса. Имя домена состоит из цепочки имен, составляющих историю запуска. Например домен ядра <kernel>, тогда имя домена процесса /sbin/init запущенного ядром будет"<kernel> /sbin/init". Если /sbin/init запустит /etc/rc.d/rc, то имя домена будет "<kernel> /sbin/init /etc/rc.d/rc"

К каждому домену может быть привязан профиль. Существует четыре профиля по умолчанию:

Disabled Все работает как на обычном ядре.
Learning Режим обучения. Не сбрасывать запрос если он не удовлетворяет текущей политике. Добавить запрос в политику.
Permissive Разрешающий режим. Не сбрасывать запрос если он не удовлетворяет текущей политике.
Enforcing Запрещающий режим. Сбросить запрос.

Обучающий режим может быть использован для анализа какого либо приложения или всей системы. Все запросы, будут записаны. Так же этот режим может быть использован перед тем как применять запрещающую политику.

Ссылки