Изменение прав доступа

Изменение прав доступа #

Команды #

  • id - узнать текущие идентификационные данные.
  • chmod - изменить права доступа к файлам и каталогам.
  • umask - указать маску для создаваемых файлов.
  • su - запустить команду или оболочку с правами другого пользователя.
  • sudo - запустить команду с правами другого пользователя.
  • chown - изменить владельца файла.
  • chrgp - изменить группу файла.
  • passwd - изменить пароль пользователя.

Задачи #

Права доступа к файлам и каталогам #

Ознакомьтесь с документацией о системе прав в UNIX.

Расшифруйте следующие права доступа к файлам:

  1. drwxr-xr-x
  2. lrwxrwxrwx
  3. drwxrwxr-x
  4. -rw-r--r--
  5. -rwxr-sr-x
  6. -rwsr-xr--
  7. drwxrwx---

Преобразуйте следующие права в цифровое представление:

  1. drwxr-xr-x
  2. -rw-r--r--
  3. lrwxrwxrwx
  4. drwxrwxr-x
  5. -r-xrwx---
  6. -------rwx
  7. d--x--xr--

Преобразуйте следующие права в текстовое представление:

  1. 644
  2. 755
  3. 777
  4. 770
  5. 600
  6. 700
  7. 050

Василий зашёл под учётной записью vasiliy, которая входит в группы sudo, staff и vasiliy. В каких следующих каталогах он сможет просмотреть содержимое?

  1. drwxr-xr-x 4 vasiliy vasiliy
  2. drwxr-xr-x 2 root staff
  3. drwxr-x--- 2 root adm
  4. drwx--x--x 2 root staff
  5. drwxr-xr-x 7 root dip
  6. lrwxrwxrwx 1 root root

Какие из следующих файлов он сможет прочитать? В какие сможет записать данные?

  1. -rw-r--r-- 1 andrey andrey
  2. srwx------ 1 sddm sddm
  3. srwxr-xr-x 1 root root
  4. -rw-r--r-- 1 root root
  5. -rw-r----- 1 root adm
  6. -rw-r--rw- 1 root root

Изменение параметров доступа к файлам и каталогам #

Создайте следующую структуру файлов и каталогов:

.
├── data.txt
├── first/
│   ├── common-data/
│   ├── data.txt
│   ├── hidden/
│   ├── info.txt
│   └── second/
│       └── third/
│           └── picture.png
└── private/
    ├── data-one.txt
    └── data-two.txt

Выдайте права следующим образом:

  1. К каталогу private должен иметь доступ только текущий пользователь.
  2. К каталогу first все пользователи должны иметь полный доступ на чтение и запись.
  3. К каталогу first/hidden все пользователи вашей основной группы должны иметь полный доступ.
  4. К файлу first/second/third/picture.png все пользователи должны иметь доступ на чтение.
  5. К каталогу first/common-data полный доступ должен иметь только текущий пользователь, люди из его группы должны иметь возможность просматривать список файлов.
  6. Файл data.txt в корне должен быть доступен всем пользователям только на чтение.

При решении задач используйте как полное указание прав, так и модификаторы.

Установка прав доступа по умолчанию #

Ознакомьтесь с документацией на приложение umask

Сформируйте корректную битовую маску umask для каждой из следующих задач.

  1. Каталоги и файлы не должны быть доступны на чтение и запись остальным пользователям.
  2. Каталоги и файлы должны быть доступны на полное взаимодействие для текущего пользователя и его группы. Для остальных - на чтение.
  3. Каталоги и файлы должны быть доступны только текущему пользователю на чтение, все остальные операции должны быть запрещены.

Использование мультиплексера #

Ознакомьтесь с документацией на мультиплексер zellij:

  1. На первой раскладке создайте новую панель (panel) справа.
  2. Переместите фокус на первую панель.
  3. Создайте новую вкладку (tab).
  4. Переместитесь к первой вкладке. Выберите на ней вторую панель.
  5. Отобразите в ней справочную документацию по команде cp.
  6. Переместитесь ко второй вкладке.
  7. Создайте новую панель снизу.
  8. Откройте в верхней панели документацию приложению find.
  9. Переместитесь к первой вкладке.
  10. Переместите работу мультиплексера в фоновый режим.
  11. Подключитесь назад к мультиплексеру.
  12. Закройте все активные интерпретаторы внутри мультиплексера.

Выполнение команд от имени другого пользователя #

Ознакомьтесь с документацией на приложение su.

Ознакомьтесь с документацией на следующие приложения:

  1. Проверьте в какие группы входит пользователь root.
  2. Повысьте свои привилегии до уровня суперпользователя.
    • Выполните повышение с обновлением переменных окружения.
    • Выполните повышение без сброса переменных окружения.
    • Выделите ключевые отличия, которые вы можете идентифицировать.
  3. Повысьте свои привилегии до уровня суперпользователя. Создайте несколько каталогов. Кому принадлежат данные файлы?
  4. Повысьте свои привилегии до уровня суперпользователя. Изменилось ли поведение приложения umask при работе от имени суперпользователя?
  5. Создайте несколько файлов и каталогов с повышенными привилегиями. Кому принадлежат данные файлы?
  6. В рамках виртуальной машины измените пароли для пользователей user и root.

Владельцы файлов и каталогов #

Ознакомьтесь с документацией на приложение chown

Создайте следующую структуру каталогов

.
├── home-one/
│   ├── data/
│   └── other/
├── home-three/
└── home-two/
  1. Каталоги home-two и home-three должны принадлежать пользователю user и группе root.
  2. Создайте в этом каталоге парочку файлов. Кому они принадлежат?
  3. Установите SETGIT флаг для каталога home-three.
  4. Создайте в нём файл new-data. Кому он принадлежит?
  5. Выдайте права на каталог home-one пользователю root и его группе.
  6. Выдайте права на каталог home-one/other пользователю user.
  7. Защитите каталог home-one/other от доступа других пользователей.

© A. M. Васильев, 2022, CC BY-SA 4.0, andrey@crafted.su