Права доступу до файлів у Linux / Unix: як читати, писати та змінювати?

Linux є клоном UNIX, багатокористувацької операційної системи, доступ до якої може мати багато користувачів одночасно. Linux також можна використовувати в мейнфреймах і серверах без будь-яких змін. Але це викликає занепокоєння щодо безпеки, оскільки непроханий або зловмисний користувач може пошкодити, змінити або видалити важливі дані. Для ефективної безпеки Linux ділить авторизацію на 2 рівні.

  1. Власність
  2. дозвіл

Концепція Linux File дозвіл та власність має вирішальне значення в Linux. Тут ми пояснимо дозволи та право власності на Linux і обговоримо обидва. Почнемо з Право власності.

Натисніть тут якщо відео недоступне

Право власності на файл Linux

Кожному файлу та каталогу у вашій системі Unix/Linux призначено 3 типи власників, наведені нижче.

користувач

Користувач є власником файлу. За замовчуванням особа, яка створила файл, стає його власником. Отже, користувача також іноді називають власником.

Group

Група користувачів може містити декілька користувачів. Усі користувачі, що належать до групи, матимуть однакові права доступу групи Linux до файлу. Припустімо, у вас є проект, де кільком людям потрібен доступ до файлу. Замість того, щоб вручну призначати дозволи кожному користувачеві, ви можете додати всіх користувачів до групи та призначити групі дозвіл на файл, щоб лише учасники цієї групи і ніхто інший могли читати або змінювати файли.

Інше

Будь-який інший користувач, який має доступ до файлу. Ця особа не створила файл і не належить до групи користувачів, яка може володіти файлом. Практично це означає всіх інших. Отже, коли ви встановлюєте дозвіл для інших, це також називається встановленням дозволів для світу.

Тепер постає велике питання, як Розрізняти Linux між цими трьома типами користувачів, щоб користувач «A» не міг впливати на файл, який містить важливу інформацію/дані іншого користувача «B». Це все одно, що ти не хочеш свого колегу, який працює на тебе комп'ютер Linux, щоб переглянути свої зображення. Ось де Дозволи встановити, і вони визначають поведінка користувача.

Давайте розберемося Система дозволів на Linux.

Дозволи файлів Linux

Кожен файл і каталог у вашій системі UNIX/Linux має наступні 3 дозволи, визначені для всіх 3 власників, розглянутих вище.

  • Читайте: Цей дозвіл дає вам право відкривати та читати файл. Дозвіл на читання каталогу дає вам можливість переглядати його вміст.
  • Написати: Дозвіл на запис дає вам право змінювати вміст файлу. Дозвіл на запис у каталозі дає вам право додавати, видаляти та перейменовувати файли, що зберігаються в каталозі. Розглянемо сценарій, коли ви повинні мати дозвіл на запис у файлі, але не маєте дозволу на запис у каталозі, де зберігається файл. Ви зможете змінювати вміст файлу. Але ви не зможете перейменувати, перемістити або видалити файл з каталогу.
  • Виконати: In Windows, виконувана програма зазвичай має розширення «.exe», яку можна легко запустити. В Unix/Linux ви не можете запустити програму, якщо не встановлено дозвіл на виконання. Якщо дозвіл на виконання не налаштовано, ви все одно зможете переглядати/змінювати код програми (якщо встановлено дозволи на читання та запис), але не запускати її.

Дозволи файлів Linux
Права доступу до файлів у Linux/Unix

Давайте розглянемо дозволи на файли в Linux на прикладах:

ls – l на терміналі дає

ls - l

Дозволи файлів Linux

Тут ми виділили '-rw-rw-r–'і цей дивний на вигляд код розповідає нам про дозволи Unix, надані власнику, групі користувачів і світу.

Тут перший '-' означає, що ми вибрали файл.p>

Дозволи файлів Linux

Інакше, якби це був каталог, d було б показано.

Дозволи файлів Linux

Символи досить легко запам'ятовуються.

r = дозвіл на читання
w = дозвіл на запис
x = дозвіл на виконання
- = немає дозволу

Давайте поглянемо на це так.

Перша частина коду 'rw-'. Це свідчить про те, що власник «Дім» може:

Дозвіл на файл Linux

  • Прочитайте файл
  • Напишіть або відредагуйте файл
  • Він не може виконати файл, оскільки для біта виконання встановлено значення «-».

Багато дистрибутивів Linux, наприклад Fedora, CentOS, Ubuntuі т. д. додасть користувачів до групи з таким же ім’ям групи, як і ім’я користувача. Таким чином, користувач "tom" додається до групи з назвою "tom".

Друга частина є 'rw-'. Це для групи користувачів «Домашня» та членів групи, які можуть:

  • Прочитайте файл
  • Напишіть або відредагуйте файл

Третя частина призначена для всього світу, тобто для будь-якого користувача. Він говорить 'r–'. Це означає, що користувач може лише:

  • Прочитайте файл

Дозволи файлів Linux

Зміна дозволів на файл/каталог у Linux за допомогою команди 'chmod'

Скажіть, що ви не хочете, щоб ваш колега бачив ваші особисті зображення. Цього можна досягти, змінивши права доступу до файлів.

Ми можемо використовувати 'chmod' команда, яка означає «змінити режим». За допомогою команди ми можемо встановити дозволи (читання, запис, виконання) для файлу/каталогу для власника, групи та світу.

Синтаксис:

chmod permissions filename

Є 2 способи використання команда -

  1. Абсолютний режим
  2. Символічний режим

Абсолютний (числовий) режим у Linux

У цьому режимі файл дозволи представлені не символами, а тризначним вісімковим числом.

У таблиці нижче наведено числа для всіх типів дозволів.

Номер Тип дозволу Symbol
0 Немає дозволу -
1 Виконати –X
2 Запис -w-
3 Виконати + Написати -wx
4 Читати г-
5 Прочитати + Виконати rx
6 Читати + Писати rw-
7 Читання + Запис + Виконання rwx

Давайте подивимося на дію команди дозволів chmod.

Абсолютний (числовий) режим у Linux

У наведеному вище вікні терміналу ми змінили дозволи для файлу «зразок» на «764».

Абсолютний (числовий) режим у Linux

Абсолютний код '764' говорить наступне:

  • Власник може читати, писати та виконувати
  • Група користувачів може читати та писати
  • Світ може тільки читати

Це показано як '-rwxrw-r–

Ось як ви можете змінити дозволи користувача в Linux у файлі, призначивши абсолютне число.

Символьний режим у Linux

В Абсолютному режимі ви змінюєте дозволи для всіх 3 власників. У символьному режимі ви можете змінити дозволи певного власника. Він використовує математичні символи для зміни прав доступу до файлів Unix.

Operaтор Опис

+

Додає дозвіл на файл або каталог

-

Вилучає дозвіл

=

Встановлює дозвіл і замінює дозволи, установлені раніше.

Різні власники представлені як –

Позначення користувача

u

Користувач / власник

g

група

o

інший

a

всі

Ми не будемо використовувати дозволи в числах, як-от 755, а в символах, як-от rwx. Давайте розглянемо приклад

Символьний режим у Linux

Зміна власника та групи в Linux

Щоб змінити право власності на файл/каталог, ви можете скористатися такою командою:

chown user filename

Якщо ви хочете змінити користувача, а також групу для файлу чи каталогу, скористайтеся командою

chown user:group filename

Давайте подивимося на це в дії

Зміна власника та групи в Linux

Якщо ви хочете змінити лише власника групи, скористайтеся командою

chgrp group_name filename

"chgrp' означає змінну групу.

Зміна власника та групи в Linux

Чайові

  • Файл /etc/group містить усі групи, визначені в системі
  • Ви можете використовувати команду «groups», щоб знайти всі групи, до яких ви належите
  • Зміна власника та групи в Linux

  • Ви можете використовувати команду newgrp, щоб працювати як член групи, відмінної від групи за замовчуванням
  • Зміна власника та групи в Linux

  • Ви не можете мати 2 групи, які володіють одним файлом.
  • У вас немає вкладених груп у Linux. Одна група не може бути підгрупою іншої
  • x- Виконання каталогу означає отримання дозволу «ввійти» в каталог і отримати можливий доступ до підкаталогів
  • Існують інші дозволи, які ви можете налаштувати для файлів і каталогів, які будуть розглянуті в наступному розширеному посібнику

Основна інформація:

  • Linux, будучи багатокористувацькою системою, використовує дозволи та право власності для безпеки.
  • У системі Linux є три типи користувачів, а саме. Користувач, група та інше
  • Linux ділить дозволи на файли на читання, запис і виконання, що позначаються r, w і x
  • Права доступу до файлу можна змінити за допомогою команди 'chmod', яку можна розділити на абсолютний і символічний режими.
  • Команда 'chown' може змінити право власності на файл/каталог. Використовуйте наступні команди: файл користувача chown або файл користувача chown:група
  • Команда 'chgrp' може змінити власника групи назва файлу групи chrgrp
  • Що означає x – виконання каталогу? В: Дозволено «ввійти» в каталог і отримати можливий доступ до підкаталогів.