Skip to main content
CheckTown
Інструменти

Калькулятор chmod: Дозволи файлів Unix з прикладами

Опубліковано 6 хв читання
У цій статті

Що таке chmod?

chmod (change mode) — це команда Unix та Linux, яка встановлює дозволи для файлів і каталогів. Кожен файл у системі Unix має три категорії дозволів: власник, група та інші. Кожна категорія може незалежно отримувати дозволи на читання, запис та виконання.

Розуміння chmod є необхідним для системного адміністрування, налаштування веб-серверів та безпечного управління файлами. Неправильні дозволи — одна з найпоширеніших причин вразливостей безпеки на серверах Linux.

Як працюють дозволи chmod

Дозволи можуть бути виражені у двох нотаціях: числовій (вісімковій) та символьній. Числова нотація використовує три цифри (напр. 755).

  • Читання (r = 4) — перегляд вмісту файлу або списку каталогу
  • Запис (w = 2) — зміна вмісту файлу або додавання/видалення файлів у каталозі
  • Виконання (x = 1) — запуск файлу як програми або вхід у каталог через cd

Кожна цифра — це сума дозволів: 7 = читання + запис + виконання (4+2+1), 6 = читання + запис (4+2), 5 = читання + виконання (4+1), 4 = тільки читання.

Спробуйте безкоштовно — реєстрація не потрібна

Розрахувати дозволи chmod →

Поширені значення дозволів

Ось найчастіше використовувані значення chmod та їх типові застосування.

  • 755 (rwxr-xr-x) — стандарт для виконуваних файлів та каталогів; власник має повний доступ
  • 644 (rw-r--r--) — стандарт для звичайних файлів; власник може читати та писати
  • 700 (rwx------) — приватний каталог або скрипт; тільки власник має доступ
  • 600 (rw-------) — приватний файл, як SSH-ключі; тільки власник може читати та писати
  • 777 (rwxrwxrwx) — повний доступ для всіх; майже ніколи не доречно і становить загрозу безпеці

Наслідки для безпеки

Принцип найменших привілеїв безпосередньо стосується дозволів файлів: надавайте лише мінімально необхідні дозволи.

Спеціальні біти дозволів додають ще один рівень: SUID, SGID та sticky bit на каталогах запобігають видаленню чужих файлів.

Поради та найкращі практики

Дотримуйтесь цих рекомендацій для підтримки безпечних дозволів на ваших системах.

  • Каталоги потребують дозволу на виконання — без нього користувачі не можуть увійти в каталог або отримати доступ до файлів
  • Використовуйте рекурсивний chmod обережно — chmod -R 755 робить усі файли виконуваними; використовуйте find з -type f та -type d окремо
  • Встановіть умовчання umask — umask 022 створює файли з правами 644 та каталоги з правами 755

Часті запитання

Яка різниця між 755 та 777?

При 755 власник має повний контроль, а група та інші можуть лише читати та виконувати. При 777 усі мають повний контроль. Використання 777 майже ніколи не є необхідним і створює серйозний ризик безпеки.

Чому каталогам потрібен дозвіл на виконання?

Біт виконання на каталозі контролює можливість його обходу. Без дозволу на виконання користувач не може увійти в каталог. Тому каталоги зазвичай мають 755, а файли — 644.

Які дозволи за замовчуванням для нових файлів?

Дозволи за замовчуванням залежать від налаштування umask. При стандартному umask 022 нові файли створюються з правами 644, а нові каталоги — з правами 755.

Пов'язані інструменти