Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Операцiйнi системи та середовища6.05.07(Антонов...doc
Скачиваний:
11
Добавлен:
04.05.2019
Размер:
801.79 Кб
Скачать

5.5.4 Сполучення бітів доступу

Зазвичай права на файл (наприклад для "всієї решти") встановлюються в такий спосіб:

--- жодних прав (не можна ані читати, ані змінювати вміст);

--- r-- лише читання;

--- rw- і читання і записування (змінювання) файла.

Якщо файл є "виконуваний", то права можуть виглядати так:

--- жодних прав (читати не можна, запускати не можна);

--- r-x можна запустити файл-завдання на виконання;

--- rwx можна не лише запустити, але й дещо в ньому змінити.

Інші сполучення (наприклад -w- чи --x) здаються безглуздими. Однак це не завжди є так.

Права -w- означають, що користувач з відповідної категорії не може прочитати цей файл, але може в нього писати.

Для виконуванного " " файла, це сполучення є безглузде (запустити як завдання не можна, але "зіпсувати" щось усередині — будь ласка). Якщо цей файл являє собою щось на зразок "лога" чи поштової скриньки, то такі permissions можуть мати сенс. Наприклад, ви припускаєте, що інші користувачі (чи певні програми-автомати) дописуватимуть сюди свої "повідомлення", але не хочете, щоб ті самі користувачі могли переглянути, що саме туди написали інші. Хоча при цьому ніхто не заважає тим самим користувачам просто, не читаючи, записати в цей файл що-небудь, вилучивши при цьому весь старий вміст файла, чи навіть скопіювати туди файл нульової довжини (/dev/null); при цьому, природно, взагалі жодного "вмісту" у файла не стане. Однак, щоби запобігти такій ситуації, можна поставити на той самий файл прапорець "лише дозапис". Він не завадить читати свій файл, а іншим користувачам дописувати в нього що-небудь, але й не дасть навіть стирати з файла все зайве чи вилучити файл, допоки не буде знято прапорець.

Для виконуваних файлів права --x є насправді цілком законна комбінація. Вона означає, що можна запустити задачу і одержати від неї певний результат. Не можна лише скопіювати цей файл собі чи "залізти" у його налагоджувач, саме тому такі permissions є навіть корисні, якщо треба зберегти свою "інтелектуальну власність". Комбінація -wx, мабуть, значення не має, як і просто -w- на виконуваному файлі. Цим надається можливість змінити вміст, причому "наосліп", оскільки переглянути цей вміст не можна, а результатом може бути лише зіпсуття файла. Також можна віднести до безглуздих і права r-- на виконуваному файлі. Інший користувач спокійно може скопіювати цей файл собі, при цьому він стає повноправним власником дістаної копії. Після цього він поставить на свою копію такі права, які йому заманеться, і, врешті-решт, запустить його.

Для директорій зазвичай права доступу встановлюються в такі способи:

--- – жодних прав;

r-x – нормальні права для "відвідування" директорії, але без права зміни (створювати/вилучати/перейменовувати файли);

rwx – повний доступ.

Якщо відсутній є біт доступу --x (доступ до вмісту), то кожна комбінація з двох інших нічого корисного не надасть. Комбінація r-- надасть можливість одержати список файлів у цій директорії, наприклад командою ls, і не більш того. Причому побачити можна буде лише імена файлів, а такі “подробиці”, як власник/група/permissions, будуть неприступні. У таку директорію не можна "увійти" командою cd. І навіть якщо усередині її піддиректорії мають цілком нормальні права доступу (наприклад, r-x), потрапити в них буде неможливо.

Комбінації -w- і rw- не мають сенсу: все одно, змінити щось у директорії з такими правами доступу не вдасться.

Сполучення --x та -wx є насправді є цілковито помірковані. У такий спосіб можна створити "напівсекретну" директорію. "Таємність" її полягає в тім, що ніхто сторонній не зможе переглянути, що за файли й директорії в ній розміщено. Але, якщо ви когось повідомите, як називається файл, що міститься там, його можна без проблем вилучити звідти чи переглянути його безпосередньо на місці.

Аналогічно ведеться й з піддиректоріями. Якщо ви не хочете, аби хто-небудь, знічев’я "блукаючи" вашими директоріями, натрапив на директорію з "секретним" змістом, але водночас дозволяєте обмеженому колу користувачів знайомитися з новими поповненнями, рекомендується власні приватні директорії розмістити в директорії (наприклад private) з доступом --x. Тоді інші зможуть потрапити до потрібної піддиректорії, зазначивши повний шлях (cd private/pictures), а випадковий відвідувач її взагалі не віднайде (якщо, звичайно, цей відвідувач не є root). Зрозуміло, "таємність" у цьому разі буде неповною, оскільки, якщо сторонній якимось чином дізнається про правильну назву файла чи піддиректорії, то набуде тих самих можливостей, що й "близькі друзі".

Право -wx відрізнюється від попереднього тим, що "довіреним особам" можна писати до цієї директорії. Вони можуть скопіювати туди файл, вилучити, якщо знають його точну назву, тощо; сторонній зможе хіба що записати туди файл. Вилучити там що-небудь чи перейменувати, не знаючи назв файлів

(і піддиректорій), він не зможе. Отже, усім користувачам можуть надаватися такі права:

власникові – повні права (rwx);

групі довірених осіб – те ж саме, але без права змінювання (r-x);

всій решті – жодних прав (---).

Зазвичай права призначаються навіть ще простіше. Оскільки групи складають root і пересічні користувачі, здебільшого, не обирають собі сусідів по групі, то їхні файли й директорії мають однакові "допуски" для групи і "всієї решти". Наприклад, для "несекретних" файлів (директорій) – rwxr-xr-x, а ті, котрі власник хоче відокремити від сторонніх, – rwx------.

Якщо "всій решті" надати доступ, нехай і обмежений, а для групи "особливо наближених" – навпаки, заборонити (виглядатиме це так: - rwx---r-x). Тоді група, приписана до файла, перетвориться з групи "особливо допущених" на групу "надто небажаних", тобто певний "чорний список", куди можна занести (природно, зробити це може лише root) усіх тих, хто не користується довірою. Зверніть увагу, що система, перевіряючи права конкретного користувача стосовно файла, спочатку перевіряє, чи не є він власником, потім – чи не входить він до групи, а вже по тому відносить його до "всієї решти". Отже, навіть якщо "вся решта" мають допуск до файла, але користувач мав неприємність потрапити до відповідної групи, до нього застосовуватимуть права доступу групи [7, 8].