Правила разграничения доступа astra linux

Разграничение доступа в Linux. Знакомство с Astra Linux

Всем доброго времени суток, сегодня мы поговорим о моделях разграничения доступа в семействе ОС Linux, а также начнем знакомство с отечественной ОС Astra Linux SE. Данная статья является первой в цикле и предназначена для людей, только начинающих постигать Linux во всем его многообразии.

Для начала стоит ответить на вопрос: почему именно Astra? Согласно отзывам и моему собственному опыту это далеко не самая удобная система для постоянного использования. Однако тут все не так просто, ведь еще 5 апреля 2013 г вышел закон №44-ФЗ «О контрактной системе в сфере закупок товаров, работ, услуг для обеспечения государственных и муниципальных нужд», согласно которому все государственные и муниципальные органы, органы управления и прочие гос. организации обязаны закупать отечественное ПО. А это значит, что с каждым годом вероятность столкнуться лицом к лицу с отечественными ОС только возрастает. Именно поэтому я решил поделиться своим знаниями и опытом.

1.Основные способы разграничения доступа

Зачем вообще разграничивать доступ к отдельным объектам в системе, думаю объяснять не стоит. Мы же не хотим, чтобы обычной пользователь случайно нарушил целостность системных файлов, верно?

Всего есть 2 вида моделей разграничения доступа: дискреционная и мандатная.

Дискреционное управление доступом

Эта модель в том или ином виде реализована почти во всех современных *nix-системах. В англоязычных ресурсах можно встретить название DAC (Discretionary Access Control). Суть ее заключается в управлении доступом субъектов к объектам на основе списков управления доступом. Дискреционное управление доступом в ОС проекта GNU/Linux основано на понятии владения (использовании права доступа владения) файлом, процессом, каталогом (сущностями и субъект-сессиями). Так, с каждым файлом или каталогом связана учётная запись пользователя — их владельца ( owner ). Процесс, который функционирует от имени такой учётной записи-владельца сущности, имеет право изменять дискреционные права доступа к ней, например назначать их учётным записям других пользователей ОС на основе стандарта POSIX ACL . Однако зачастую настраивать права доступа для каждой учетной записи бывает затруднительно и поэтому пользователей объединяют в группы, которым тоже можно назначить права доступа.

Так в чем же заключается стандарт POSIX ACL?

POSIX ACL – POSIX-совместимый стандарт определения разрешений на доступ к объектам, основанный на списках контроля доступа (ACL – Access Control Lists). Он реализует несколько вариантов дискреционной модели, отличающихся уровнем функциональности и методами хранения списков контроля доступа.

Читайте также:  Nvidia grid linux driver

ACL – Access Control Lists

Как видно из схемы, существует 2 вида атрибутов для вышеупомянутого стандарта. Давайте разберем каждый из них.

2.Minimal POSIX ACL. Список контроля на уровне inode файла

В метаданных каждого объекта (в inode файла/директории) содержится список разрешений на доступ к нему для разных категорий субъектов.

Атрибуты Minimal ACL поддерживают три базовых класса субъектов доступа к файлу (класс All объединяет все три класса):

Для каждого из этих классов определены три типа разрешений:

Список разрешений Minimal ACL представлен в inode файла (директории) девятью байтами (символами) . Каждый байт определяет одно из разрешений (символы r, w, x) или их отсутствие (символ «-»).Байты разрешений сгруппированы в следующие классы:

Список разрешений Minimal ACL

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

Для того, чтобы посмотреть атрибуты отдельного файла или директории в символьном виде можно воспользоваться командой:

Вывод команды

Таким образом мы понимаем, что это файл обычного типа (–). Для владельца разрешены чтение, запись и исполнение (rwx), для владеющей группы – чтение и запись (rw-), для остальных пользователей – только чтение (r—).

Для директорий трактовка типов разрешений иная:

r – разрешение на « открытие » директории, то есть на чтение списка файлов , которые содержит эта директория.

w – разрешение на модификацию этого списка файлов (создание/удаление/переименование/перемещение) файлов этой директории.

x – разрешение на « исполнение » директории, то есть на возможность перейти в нее .

Чтобы изменить расширения для определенного файла используется команда chmod с соответствующими аргументами:

Принцип работы chmod

chmod o=r test.file – установка разрешения «чтение» для остальных пользователей (не владельцев объекта), вне зависимости какие разрешения были установлены ранее

chmod g+rw test.file – добавление разрешений «чтение» и «запись» для группы, владеющей файлом

Также Minimal ACL имеют числовое представление (Numeric Notation) в виде трех восьмеричных чисел. Эти числа определяют разрешение на доступ к файлу или директории трех субъектов доступа (u,g,o). Каждое из них формируется путем суммирования восьмеричных значений необходимых разрешений:

Например, полный доступ (rwx) – это: 4+2+1=7

Таким образом, можно задать разрешения для файла следующим образом:

chmod 0740 test.file , что будет соответствовать атрибутам -rwxr——

В ряде случаев в ходе пользовательского сеанса возникает необходимость смены разрешений при доступе файлам и директориям

Например для файла /etc/shadow любой пользователь может записать в него хеш своего пароля

Смена разрешений

Такая смена разрешений называется изменение режима доступа .

Она реализуется установкой специальных флагов в зарезервированном десятом байте списка Minimal POSIX ACL или заменой ими байтов разрешений

Читайте также:  Удаление папки через консоль линукс

Флаг -t (sticky bit). Устанавливается в разрешениях директорий и разрешает манипулирование файлами внутри этих директорий только их владельцам

Флаг -s (флаг режимов SUID и SGID). Устанавливается вместо разрешения « x » у владельца (режим SUID ) и/или владеющей группы (режим SGID ) и разрешает исполнение этого файла с разрешениями его владельца и/или владеющей группы , а не с разрешениями пользователя, запустившего файл.

3.Extended POSIX ACL (EA). Расширенные списки контроля доступа

Вполне естественно, что такая простая схема, как в Minimal POSIX ACL имеет ряд недостатков. Самый явный из них, это отсутствие гибкости при совместном доступе субъектов к объектам. К тому же, списки доступа Extended POSIX ACL создаются и хранятся в системных таблицах ядра ОС.

Основой Extended POSIX ACL является понятие «именованный пользователь (группа)» (named user (group), что позволяет нам выдавать отдельный набор разрешений для конкретных пользователей или групп.

Отличие Extended POSIX ACL от Minimal ACL

Для работы с Extended POSIX ACL используются следующие команды:

Просмотр: системный вызов getfacl

Вывод getfacl

Установка: системный вызов setfacl

Установка setfacl

Пример вызова

4. В заключение

На этом рассмотрение дискреционной модели доступа закончено, однако остался один вопрос: а причем тут Astra Linux? Дело в том, что в ней, помимо дискреционной модели доступа, реализована еще и мандатная модель доступа, а также контроль целостности файлов, что усиливает защищенность системы. Astra Linux также сертифицирована ФСТЭК и ФСБ для работы с гос. тайной, что постепенно приносит ей известность и предоставляет возможность использования в государственном секторе.

Источник

Контекст безопасности

Контекст безопасности — структура, включающая в себя все атрибуты управления доступом субъектов доступа (субъектов, например, процессов ) к объектам доступа (сущностям, например, файлам или каталогам) , существующие в соответствии с формальной мандатной сущностно-ролевой моделью управления доступом и информационными потоками (МРОСЛ ДП-моделью) и определяющие порядок доступа субъектов к сущностям.

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

  • Контекст дискреционного управления доступом (разграничения доступа);
  • Контекст мандатного управления доступом (разграничения доступа);
  • Контекст ролевого управления доступом (разграничения доступа);
  • Иные атрибуты, определяемые формальной моделью управления доступом и ее реализацией.

В рамках наст оящего документа рассматрива ю тся состав и структура контекста мандатного управления доступ ом ( мандатного контекста ) .

Мандатный контекст

Мандатный контекст представляет собой полный набор мандатных атрибутов субъекта или сущности.
Мандатный контекст включает в себя все мандатные атрибуты субъекта или сущности, и мандатных атрибутов вне мандатного контекста не существует.

Читайте также:  Astra linux посмотреть версию ядра

Мандатный контекст включает в себя:

Субъекты или сущности, которым явно не присвоен никакой мандатный контекст, считаются имеющими минимальный (нулевой) мандатный контекст, т.е. мандатный контекст в котором все мандатные атрибуты имеют минимальные допустимые значения (например, равны нулю).

Метка безопасности

Метка безопасности является составной и включает в себя две метки:

Классификационная метка является составной и включает в себя:

  • Иерархический уровень конфиденциальности;
  • Неиерархическую категорию конфиденци альности.

Метка целостности представлена одним мандатным атрибутом:

Дополнительные мандатные атрибуты управления доступом

В зависимости от реализац ии формальной модел и управления доступом отдельным субъектам или сущностям может быть дополнительно присвоен набор необязательных мандатных атрибутов управления доступом, не входящих в метку. Необязательные мандатные атрибуты управления доступом позв оляют уточнять правил а мандатного доступа для отдель ных субъектов или сущносте й.

В качестве примера можно привести следующие мандатные атрибуты управления доступом, использованные в операционной системе специального назначения Astra Linux Special Edition:

    Мандатные атрибуты меток безопасности сущностей, являющихся контейнерами ( т.е. сущностей , которые могут содержать другие сущности , например, каталог ам файловой системы ):

      Мандатный атрибут ccnr. Определяет, что контейнер может содержать сущности с различными классификационными метками , но не большими, чем его собственная метка. Чтение содержимого такого контейнера разрешается субъекту вне зависимости от значения классификационной метки этого субъекта, при этом субъекту доступна информация только про находящиеся в этом контейнере сущности с классификационной меткой не большей, чем собственная классификационная метка субъекта, либо про сущности-контейнеры, также имеющие мандатный атрибут управления доступом ccnr;

    В ОС Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6) с установленным обновлением № 20190222SE16 и в ОС Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1) мандатный атрибут управления доступом ccnri включен для всех контейнеров, и не может быть изменен.

    • Если метка целостности субъекта меньше или равна метке целостности контейнера, то создаваемые в каталоге сущности наследуют метку целостности создающего их субъекта;
    • Если метка целостности субъекта выше или несравнима с меткой целостности контейнера, то метка целостности создаваемых сущностей устанавливается как наибольшее значение, одновременно меньшее или равное значениям меток целостности контейнера и субъекта. Атрибут доступен только при включенном расширенном режиме МКЦ (расширенный режим МКЦ доступен начиная с обновления БЮЛЛЕТЕНЬ № 2022-0819SE17 (оперативное обновление 1.7.2);

    Мандатный контекст

    Метка безопасности

    Мандатные атрибуты управления доступом

    Источник

Оцените статью
Adblock
detector