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

1

У нас возникла ситуация, когда у нас есть SD-карта, для которой требуется защита паролем определенной папки.

Папка содержит видеофайлы и должна иметь доступ к приложению (Kodi).

Следующие условия должны быть выполнены:

  1. SD-карта должна использоваться многими различными машинами
  2. Любой пользователь с паролем должен иметь возможность добавлять / редактировать / удалять файлы в папке
  3. Kodi должен иметь возможность доступа к папке, поскольку он автоматически воспроизводит видео оттуда (что он в настоящее время уже делает)

Есть ли способ добавить пароль к файлу с помощью терминала? Желательно, чтобы для этого не было установлено никакого внешнего приложения, но я чувствую, что это может быть неизбежно.

Я уже рассматривал варианты шифрования, такие как cryptkeeper и GnuGP, но я не уверен, что они могут соответствовать трем условиям, указанным выше.

Патрик Уайт
источник
Настройка фактически зашифрованного тома или чего-то подобного, вероятно, является лучшим вариантом, при условии, что данные должны оставаться на этой SD-карте. В противном случае возможно использование zip-файла, защищенного паролем.
Сет

Ответы:

1

Похоже, вам нужно шифрование «на лету», так что вы можете просто «разблокировать» и сразу же прочитать файлы, не расшифровывая их во втором месте (как в gpg).

Cryptkeeper использует EncFS, обычно они не устанавливаются по умолчанию в общих дистрибутивах.

cryptsetup часто устанавливается по умолчанию, так что вы можете использовать LUKS на всей SD-карте, или просто на разделе, или только на файле.

Чтобы использовать ЛУКС на всю карту:

  1. Создать контейнер: cryptsetup luksFormat <device>
  2. Открытый контейнер: cryptsetup luksOpen <device> mapname
  3. Формат контейнера: mkfs.ext4 /dev/mapper/mapname(используйте другую файловую систему, если хотите, вместо ext4)
  4. Смонтировать контейнер: mount /dev/mapper/mapname /mountpoint
  5. Копировать ( cp) файлы в контейнер в/mountpoint

Чтобы прочитать файлы / воспроизвести видео, выполните шаги 2–4, а затем скажите Kodi (или любой программе), чтобы они читали файлы на /mountpoint

  • Чтобы использовать только файл на SD-карте, замените <device>файл. Можно создать файл на SD-карте с:

    fallocate -l <length> file
    или же
    head -c <length> /dev/zero > file

Если вы используете LUKS только для файла, вы также можете добавить небольшой скрипт установки, содержащий шаги 2-4, если только ваша система или файловый менеджер (или gnome-disk-utility) не разблокируют и не монтируют контейнер LUKS одним или двумя щелчками мыши.


eCryptfs - это еще один вариант, хотя IMO не так прост в настройке и использовании, как LUKS, хотя обычно он тоже уже установлен. Посмотрите этот ответ на askubuntu для некоторой информации о eCryptfs со случайным каталогом.

Xen2050
источник
Спасибо тебе за это. Мы не смогли получить ОС (LibreElec), чтобы обойти защиту, но предложенные вами шаги работали с точки зрения шифрования раздела. Мы попытаемся найти решение, чтобы получить RasPi, который мы используем для обхода защиты на карте.
Патрик Уайт
Пожалуйста. К вашему сведению, в archWiki есть и хорошая информация о шифровании. Wiki.archlinux.org/index.php/Disk_encryption
Xen2050,