README.md 5.2 KB

УПРАВЛЕНИЕ ДОСТУПОМ В LINUX/UNIX СИСТЕМАХ

Ниже обозначаются некоторые общие/базовые правила управления доступом в Linux/UNIX системах:

  • Объекты (например, файлы и процессы) имеют владельцев. Владельцы обладают обширным (но необязательно неограниченным) контролем над своими объектами.
  • Пользователь является владельцем новых объектов, создаваемых им самим.
  • Пользователь root с особыми правами, известный как суперпользователь, может действовать как владелец любого объекта в системе.
  • Только суперпользователь может выполнять административные операции особого значения (например, выполнять некоторые системные вызовы).

В модели безопасности Linux для каждого объекта файловой системы существует три типа разрешений: чтение (r), запись (w) и выполнение (x). Разрешение на запись также позволяет изменять или удалять объект. Кроме того, эти разрешения указываются отдельно для владельца файла, членов группы файла и для всех остальных.

Управление доступом

У каждого объекта в Linux есть свой идентификатор, а так же права доступа, применяемые к данному идентификатору. Идентификатор есть у пользователя - UID, у группы - GID, у файла - inode.

Собственно inode является, как идентификатором файла/каталога, так и сущностью, которая содержит в себе информацию о файле/каталоге. Например такую, как: принадлежность к владельцу/группе, тип файла и права доступа к файлу.

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

Полномочия чтения (r от read).
Записи (w от write).
Выполнения (x от execution).
В полномочия записи входят также возможности удаления и изменения объекта. Право выполнения можно установить для любого файла. Потенциально, любой файл в системе можно запустить на выполнение, как программу в Windows. В Linux является ли файл исполняемым или нет, определяется не по его расширению, а по правам доступа. Кроме того, эти полномочия указываются отдельно для владельца файла, членов группы файла и для всех остальных.

Управление правами доступа

Картинка1

Управление правами доступа происходит с помощью команды chmod, управление владельцем файла происходит с помощью команды chown. Синтаксис команд следующий:

chmod [к_какой_группе_прав][что_сделать_с_правами][какие_права] <над_каким_объектом>

chmod [права] <над_чем>

[к_какой_группе_прав] может быть:
u (от user) - владелец-пользователь.
g (от group) - владелец-группа.
o (от other) - остальные пользователи.
a (от all) - все вышеперечисленные группы вместе.
[что_сделать_с_правами] может быть:

  • - добавить.
  • - убрать.
    = - присвоить указанное.
    [какие_права] может быть:
    r - чтение.
    w - запись.
    x - выполнение.
    [над_каким_объектом] соответственно - имя или путь к файлу
    [права] числовое обозначение прав доступа (755, 644 и т.п.)
    Использование команды chown выглядит следующим образом: chown user:group file (-R рекурсивно)

zinvapel.github.io
rustamkhodjaev.com