Гид по технологиям

Как парольно защитить папку в Linux с помощью chown и chmod

5 min read Linux Обновлено 03 Dec 2025
Защита папки в Linux: chown и chmod
Защита папки в Linux: chown и chmod

Навесной замок на металлических воротах

Короткое определение: владелец — учётная запись, которой принадлежат файлы; группа — набор пользователей; права — чтение, запись и выполнение.

Зачем это работает и что даёт

Unix-подобные системы строят управление доступом вокруг владельца, группы и набора прав. У файла или каталога есть три набора прав: для владельца (u), для группы (g) и для остальных (o). Изменив владельца на отдельного пользователя и убрав права для g и o, вы заставляете систему требовать учётные данные для доступа.

Плюсы:

  • Быстро и встроенно — не требует дополнительного ПО.
  • Простая реализация для временной или локальной защиты.

Минусы:

  • Не шифрует данные — файлы остаются в явном виде на диске.
  • Не защищает от root или физического доступа к диску.
  • Нужны правильные пароли и ограничения для административных учётных записей.

Создание отдельного пользователя для защиты папки

Мы создадим учётную запись, которой станет принадлежать защищаемая папка. Она будет требовать пароль, когда кто-то попытается войти под ней или использовать sudo.

  1. Создайте пользователя без домашней папки:
sudo useradd --no-create-home protector
  1. Установите надёжный пароль для нового пользователя:
sudo passwd protector

Важно: используйте сложный пароль и храните его в менеджере паролей.

Изменение владельца папки

Чтобы собственник папки был не ваша обычная учётная запись, а только что созданный пользователь, используйте chown.

sudo chown -R protector:protector testdir/

Вывод команды chown, показ изменения владельца папки

Синтаксис chown: chown [владелец][:группа] файл…

Параметр -R делает операцию рекурсивной и применяет изменения ко всем вложенным файлам и каталогам.

Удаление прав у группы и остальных

Теперь запретим доступ всем, кроме владельца. Используем chmod:

sudo chmod -R og-rwx testdir/

Вывод команды chmod, показ изменения прав доступа

Разбор: og-rwx значит «изъять (минус) права чтения, записи и выполнения у группы (g) и прочих (o)».

В результате только пользователь protector сможет читать и менять содержимое папки, если другие не получат root-доступ или права sudo.

Практическое руководство шаг за шагом

  1. Выберите папку, которую хотите защитить (например, /home/you/secret).
  2. Создайте отдельного системного пользователя без домашней директории.
  3. Установите надёжный пароль для этого пользователя.
  4. Выполните sudo chown -R protector:protector /путь/к/папке.
  5. Выполните sudo chmod -R og-rwx /путь/к/папке.
  6. Проверьте права через ls -la /путь/к/папке.
  7. Не оставляйте сеанс root или пользователя с sudo активным, когда другие пользуются компьютером.

Критерии приёмки

  • ls -la показывает владельца protector и права rwx—— для каталога.
  • Другие пользователи при попытке читать файлы получают отказ в доступе.
  • Доступ для владельца возможен только после входа под protector или при получении sudo у владельца (и ввода пароля).

Ограничения и когда это не сработает

Контрпримеры и случаи отказа:

  • Пользователь с доступом root или с консольным входом в систему всегда сможет снять ограничения и прочитать файлы.
  • Физический доступ к диску (например, загрузка с live CD или подключение диска к другой машине) даёт возможность обойти эти права.
  • Если у вашей обычной учётной записи есть sudo без запроса пароля (NOPASSWD) или длительная сессия sudo, защита слабает.
  • Неправильно настроенные маски umask и ACL (setfacl/getfacl) могут оставить файлы доступными.

Важно: chown и chmod не шифруют данные. Они подходят для экспресс-защиты от соседей по компьютеру, но не для секретной информации.

Альтернативы и более надёжные решения

  1. Шифрование раздела с помощью LUKS (recommended для полного диска или раздела). Преимущество: данные зашифрованы и недоступны без ключа даже при физическом доступе.
  2. Пользовательское шифрование (e.g., ecryptfs, gocryptfs, veracrypt) — шифрует только каталог или контейнер.
  3. Управление доступом на основе ACL — даёт гибкие права для отдельных пользователей и групп (setfacl/getfacl).
  4. Контейнеры и виртуальные машины — изолируют данные в отдельной среде.

Критерий выбора: если данные должны быть конфиденциальны при физическом доступе — используйте шифрование; если нужно только предотвратить случайный просмотр — достаточно chown/chmod.

Руководство по безопасности и практики жёсткой настройки

  • Убедитесь, что root и административные учётные записи защищены сильными паролями.
  • Отключите sudo без пароля (удалите NOPASSWD) и настройте короткий таймаут сессии sudo (в /etc/sudoers или через sudoers.d).
  • Регулярно проверяйте активные сессии и входы (who, last).
  • Ограничьте физический доступ к устройству и храните резервные копии в зашифрованном виде.
  • Если требуется аудит, включите системный аудит (auditd) для отслеживания доступа к защищённой папке.

Чек-лист для ролей

Для обычного пользователя:

  • Создать отдельного пользователя protector.
  • Установить надёжный пароль и сохранить его в менеджере паролей.
  • Выполнить chown и chmod как описано.
  • Выйти из учётных записей с административными правами.

Для администратора:

  • Проверить настройки sudo и отключить NOPASSWD.
  • Настроить политику паролей и таймауты для sudo.
  • Рассмотреть шифрование раздела или каталога.
  • Настроить бэкап и аудит.

Тесты и критерии приёмки

Тестовые случаи:

  • Попытка чтения файлов под другим пользователем — ожидаемый результат: доступ запрещён (EACCES).
  • Попытка получить содержимое каталога с помощью root — ожидаемый результат: root может читать (тестер отмечает это как ограничение).
  • Попытка загрузиться с live CD и прочитать файлы — ожидаемый результат: файлы доступны, что демонстрирует, что chown/chmod не защищают от физического доступа.

Краткая шпаргалка команд

  • Создать системного пользователя без домашней папки:
sudo useradd --no-create-home protector
  • Установить пароль:
sudo passwd protector
  • Поменять владельца рекурсивно:
sudo chown -R protector:protector /путь/к/папке
  • Убрать права у группы и остальных рекурсивно:
sudo chmod -R og-rwx /путь/к/папке
  • Проверить права:
ls -la /путь/к/папке

Краткий глоссарий

  • root: суперпользователь с полными правами.
  • sudo: инструмент для временного выполнения команд от имени root.
  • chown: изменить владельца файла/папки.
  • chmod: изменить права доступа.
  • LUKS: механизм шифрования для блоков/разделов.

Резюме

Метод с chown и chmod полезен для быстрой защиты каталога от случайного просмотра другими пользователями. Он не шифрует данные и не защищает от root или физического доступа к диску. Для реальной конфиденциальности рассматривайте шифрование разделов (LUKS) или шифрование контейнеров. Следите за безопасностью учётных записей и настройками sudo.

Важно: используйте этот подход как временную или вспомогательную меру, а не как единственную линию защиты для критичных данных.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Приватный режим в браузерах Android
Советы

Приватный режим в браузерах Android

Как защитить беспроводной роутер
Безопасность

Как защитить беспроводной роутер

Темная тема в Google Calendar — Android, iPhone, веб
Инструкции

Темная тема в Google Calendar — Android, iPhone, веб

Неподписанные драйверы Windows 10 — как установить
Windows

Неподписанные драйверы Windows 10 — как установить

Outlook: исправление резкого роста CPU
Поддержка

Outlook: исправление резкого роста CPU

Поиск ссылок на Reddit по домену
Руководство

Поиск ссылок на Reddit по домену