What's new

Article [3] Основы Linux для начинающего "Хакера": (Права)

sshNkt 0

sshNkt

Staff member
Nov 11, 2019
44
127
Всем привет, этот цикл статей будет в основном для начинающих но если вы более продвинутый специалист и найдете для себя что то новое мы будем только рады :).

Эти пособия по Linux для тех у кого есть пробелы в некоторых базовых вещах по использованию операционной системы Linux. Нам еще многое предстоит узнать, рассмотрим в этой статье управление правами пользователей для файлов Linux.Советую ознакомится с предыдущими статьями по данной тематике.

Files-permissions-and-ownership-basics-in-Linux.png


Проверка прав
Когда нам надо узнать права для файла, нужно просто использовать знакомую из прошлой статьи команду ls с ключом -l или long что значит . Давайте воспользуемся этой командой в каталоге /root/test и посмотрим, что она говорит нам о содержимом.

Снимок экрана 2019-12-02 в 21.26.34.png


Распознаем файл или директория
Самый первый символ строки говорит нам, файл это или каталог. Если строка начинается с d(directory), это каталог. Если начинается с " - ", это файл.

Без названия.png


Распознаем права
Следующий столбец символов определяет права доступа к файлу. Существует три набора rwx, которые означают чтение(read), запись(write) и выполнение(execute). Это определяет, есть ли разрешение на чтение файла, запись в файл или выполнение файла. Если мы посмотрим на вторую строку.

Без названия.png

Мы видим что эта строка начинается с : -rw-р - r-- Это означает, что это файл (-), в котором владелец имеет разрешения на чтение (r) и запись (w), но не имеет разрешения на выполнение (-).Почему владелец?Если рассматривать rw- как столбец относящийся к владельцу, то следующий столбец r-- относиться к группе и последний к остальным пользователям.Мы делим права на эти 3 категории.

Смена прав
Давайте представим что нам надо чтобы группа могла писать и выполнять файл . В Linux есть команда chmod, которая позволяет нам изменять права доступа к файлу, пока мы являемся пользователем root или владельцем файла. Эти разрешения представлены в их численном эквиваленте в операционной системе Linux.

Итак, три вида прав выглядят в численном виде примерно так:
  • r w x
  • 4 2 1
Если вы сложите эти три значение, вы получите семь, верно? В Linux, когда все прав включены, мы можем представить его в десятичном числовом эквиваленте 7. Итак, если мы хотим представить, что владелец (7) и группа (7) и все пользователи (7) имеют все разрешения, это будет выглядеть так :
  • 777 (rwx rwx rwx) - Каждый пользователь может читать, редактировать и запускать на выполнение
Теперь вернемся к нашему файлу "newfile". Его права - rw- r-- r--, поэтому мы могли бы представить это численно как:
  • r w - r - - r - -
  • 4 2 0 4 0 0 4 0 0
644 (-rw-r--r--) - Все пользователи имеют право чтения, владелец может редактировать.

Теперь, если мы хотим дать группе полномочия write (2) и execute (1), мы можем использовать для этого команду chmod. Мы делаем это командой:
Code:
chmod 774 newfile
ls -l
Снимок экрана 2019-12-02 в 23.29.12.png

Это команда дает владельцу все права (4 + 2 + 1 = 7), группе (4 + 2 + 1 = 7) и дает всем остальным просто разрешение на чтение (4 + 0 + 0 = 4). Теперь, когда мы выполняем команду ls -l, мы видим, что права для newfile теперь: r w x | r w x | r - -.

Изменение прав с UGO
Хотя числовой метод, является наиболее распространенным методом изменения прав в Linux , есть еще один метод, который некоторым людям удобнее. Его часто называют синтаксисом UGO. UGO означает U = пользователь или владелец, G = группа и O = другие. UGO имеет три оператора:
  • + для добавления прав
  • - для удаления прав
  • = установить права

Итак, если бы я хотел убрать права на запись в группу, к которой принадлежит "newfile", я мог бы написать: chmod g-w newfile. Эта команда говорит: «для группы (g) вычтите (-) разрешение записи (w) в "newfile"».

Снимок экрана 2019-12-02 в 23.48.17.png

Вы можете увидеть, я сейчас проверяю права доступа к файлу, набрав ls -l, у файла newfile больше нет разрешения на запись для группы. Если бы я хотел дать пользователю и группе разрешение на выполнение(x), я мог бы набрать: chmod u + x, g + x newfile Эта команда говорит: «для пользователя добавьте разрешение на выполнение(x), для группы добавьте разрешение на выполнение(x) в файле newfile».

Надеюсь эта статья была для вас полезной.Спасибо за внимание :).
 

Attachments

Last edited:
Kansay 0

Kansay

New Member
Jan 11, 2020
4
13
Благодарю ! Для меня статья оказалась очень полезной . Наконец-то удалось разобраться с этой темой , расписано очень доходчиво и понятно .
 
sshNkt 0

sshNkt

Staff member
Nov 11, 2019
44
127
Благодарю ! Для меня статья оказалась очень полезной . Наконец-то удалось разобраться с этой темой , расписано очень доходчиво и понятно .
Круто, приятно слышать (благодаря твоему коменту обратил внимание на статью решил перечитать и нашел несколько грамматических ошибок так что тебе тоже спасибо :) (y) )
 
Top Bottom