URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 125233
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Шифрование данных на существующем разделе ext4 без его переформатирования"

Отправлено auto_tips , 11-Сен-21 22:37 
Можно отметить два основных способа организации шифрования данных в уже существующей файловой системе Ext4, не требующие пересоздания раздела с переносом данных из резервной копии. Первый способ заключается в использовании встроенных в Ext4 возможностей по шифрованию отдельных каталогов, а второй в использовании команды "cryptsetup reencrypt" для прозрачного переноса ФС на новый шифрованный раздел LUKS. В любом случае создание полной резервной копии перед выполнением предложенных манипуляций обязательно.

Первый способ наиболее простой и безопасный, но оно ограничен использованием отдельных шифрованных каталогов, в которые можно перенести конфиденциальные данные, требующие защиты. Шифрование в Ext4 поддерживается при использовании как минимум ядра Linux 4.1 и утилит 2fsprogs 1.43.

Выставляем в суперблоке раздела  c ФС ext4 флаг поддержки шифрования (в нашем случае /dev/sda1):

    sudo tune2fs -O encrypt /dev/sda1

Создаём каталог, в котором будут храниться зашифрованные данные текущего пользователя:

    mkdir -p /secret/home/user
  
Генерируем случайную salt-последовательность для последующего шифрования и сохраняем её в отдельный файл:

    echo 0x`head -c 16 /dev/urandom | xxd -p` > /home/user/.crypt_salt

Создаём на базе данной salt-последовательности ключ для шифрования, указав для него пароль:

    e4crypt add_key -S /home/user/.crypt_salt

    Enter passphrase (echo disabled):
    Added key with descriptor [f467134ca2c48c33]

Проверяем добавление ключа командой "keyctl show", которая поставляется в пакете keyutils.

  
Активируем шифрование для каталога /secret/home/user, указав выданный идентификатор ключа:

    e4crypt set_policy f467134ca2c48c33 /secret/home/user

Если после перезагрузки попытаться обратится к каталогу /secret/home/user без добавления ключа командой "e4crypt add_key", его содержимое будет показано в зашифрованном виде. Для расшифровки каталога при каждой загрузке необходимо настроить повторный вызов команды add_key для привязки ключа.
  
   e4crypt add_key -S /home/user/.crypt_salt

   Enter passphrase (echo disabled):
   Added key with descriptor [f467134ca2c48c33]

Для просмотра привязанного к каталогу ключа можно использовать команду

   e4crypt get_policy /secret/home/user

В случае необходимости шифрования всего содержимого можно использовать LUKS cryptsetup для шифрования имеющегося раздела без потери данных.

Отмонтируем шифруемый раздел (при изменении корневого раздела нужно загрузиться с отдельного live-дистрибутива), проверяем целостность ФС и уменьшаем размер ФС для того, чтобы разместить заголвки LUKS на диске (в ФС должно быть достаточно свободного места):

   e2fsck -f /dev/sda4
   resize2fs /dev/sda4 размер_меньше_текущего_на_32МБ

Шифруем содержимое имеющегося раздела без потери информации:
  
   cryptsetup reencrypt --encrypt /dev/sda4 --reduce-device-size 32M
  
Открываем раздел:

   cryptsetup open /dev/sdXY home
  
Увеличиваем размер ФС до свободной границы

   resize2fs /dev/mapper/home

Монтируем раздел:
  
    mount /dev/mapper/home /mnt/home

Смотрим UUID:

   blkid /dev/mapper/home

Добавляем информацию о разделе в /etc/crypttab

   home UUID=UUID_устройства_LUKS none


URL: https://askubuntu.com/questions/643577/how-to-create-ext4-en... https://unix.stackexchange.com/questions/444931/is-there-a-w...
Обсуждается: http://www.opennet.dev/tips/info/3175.shtml


Содержание

Сообщения в этом обсуждении
"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Анонимчик , 11-Сен-21 22:37 
Чем первый вариант лучше ecryptfs?

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено hefenud , 12-Сен-21 20:56 
Хотя бы тем, что ecryptfs более не разрабатывается и объявлен депрекейтед
Уязвимости в нем не будут фиксится, разработка прекращена 5 лет назад

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Анонимчик , 12-Сен-21 22:43 
Спасибо за инфу, даже не знал об этом.

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Анонимчик , 13-Сен-21 10:56 
https://wiki.archlinux.org/title/Talk:Ext4:

> e4crypt tool itself is also deprecated and no longer being updated (as it was really meant more as a demonstration, not as a proper user interface to filesystem encryption)

https://wiki.archlinux.org/title/Fscrypt#Alternatives_to_con...:

> e4crypt is missing many basic features and is no longer being actively developed

Вам про это ничего не известно?


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено hefenud , 13-Сен-21 12:56 
Нет, я по привычке все LUKS'ом шифрую
Когда в ext4 добавили шифрование посмотрел, подумал, что может быть полезно, но привычки менять не стал

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Анонимчик , 13-Сен-21 13:21 
Не похоже, что ecryptfs больше не разрабатывается - https://www.spinics.net/lists/ecryptfs/.

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено hefenud , 13-Сен-21 14:03 
Ну я это помню по убунтовской рассылке, в объяснениях почему именно от него отказываются
Просто я сам его использовал на десктопе и когда было объявлено, что разработка сворачивается и он депрекейтед пришлось отказаться для хома(как у настоящего параноика у меня вся система была под LUKS'ом, а /home еще и ecryptfs)

Если меня ввели в заблуждение те кто сообщали об этом в рассылке и кто соответственно убрал из Ubuntu шифрование хома, то прошу прощения, так отложилось в голове

С другой стороны раз оно выкинуто из мэйнстрим-десктопа, то ну его к черту, мало ли там будет уязвимостей которые могут использовать злоумышленники


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Анонимчик , 14-Сен-21 09:26 
https://www.chromium.org/chromium-os/chromiumos-design-docs/...:

> Chromium OS uses the eCryptfs stacked filesystem with per-user vault directories and keysets to separate and protect each user’s cached data.

Даже так. Хотя последний релиз ecryptfs был еще 2016-05-02. В общем, странно все это. Не понятно, безопасно ее использовать или нет...


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено hefenud , 14-Сен-21 14:00 
> https://www.chromium.org/chromium-os/chromiumos-design-docs/...:
>> Chromium OS uses the eCryptfs stacked filesystem with per-user vault directories and keysets to separate and protect each user’s cached data.
> Даже так. Хотя последний релиз ecryptfs был еще 2016-05-02. В общем, странно
> все это. Не понятно, безопасно ее использовать или нет...

Ну я бы инструменту безопасности который не обновляется 5 лет не доверял
Есть известные и живые проекты, лучше пользоваться ими


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Анонимчик , 15-Сен-21 12:12 
В общем, решил таки разобраться, deprecated ли ecryptfs или нет. Оказывается, что Ubuntu объявила как deprecated собственно поддержку ecryptfs "из коробки" (т.е. возможность при установке задать шифрование домашней папки с помощью ecryptfs) в пользу шифрования всего диска с помощью LUKS. Сама же ecryptfs ни разу не deprecated и активно развивается (https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/lin...).

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено OpenEcho , 14-Сен-21 20:04 
Посмотрите в сторону: gocryptfs

Плюсы:
- хорошо поддерживается
- может делать реверс (плюс для бэкпапов в клоуд)
- ЕМЕ, нет префикса
- Самый быстрый
- статический (т.е. работает везде)

https://nuetzlich.net/gocryptfs/comparison/


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено rinat85 , 05-Окт-21 14:54 
плюсую, пользуюсь долго на больших объемах и gocryptfs и нативным шифрованием отдельных датазетов zfs (домашние каталоги), всё прекрасно работает, смысла в LUKS особого не вижу, сенситивна обычно отдельные данные или места, где могут сохранится пароли и профили браузера, нафига шифровать например корневой раздел или вообще любой другой раздел или диск в целом вместе с куском того, что надо шифровать, шифровать и то, что не нужно было?

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Аноним , 16-Окт-21 02:23 
Чтобы после загрузки не выяснить что /bin/ls на самом деле создает туннель с шеллом до чужого сервера: кто-то воспользовался вашим компом пока вас не было/загружались в зараженную винду.

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено rinat85 , 16-Окт-21 16:15 
> Чтобы после загрузки не выяснить что /bin/ls на самом деле создает туннель
> с шеллом до чужого сервера: кто-то воспользовался вашим компом пока вас
> не было/загружались в зараженную винду.

согласен, если есть опасность того, что будет физический доступ без того, чтобы было известно хозяину, то такое возможно.


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Аноним , 13-Сен-21 04:00 
А установка убунточки до сих пор вроде предлагает зашифровать /home и конечно же там ecryptfs (который типа деприкейдет?)
Странно

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено hefenud , 13-Сен-21 12:56 
> А установка убунточки до сих пор вроде предлагает зашифровать /home и конечно
> же там ecryptfs (который типа деприкейдет?)
> Странно

Неа, с 18.04 не предлагает, предлагает криптовать всё уже 3 года, с использованием LUKS


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Аноним , 20-Сен-21 22:37 
Тем, что ecryptfs - ломучий кусок добра, корраптящий данные при отказе питания или панике.

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Анонимчик , 24-Сен-21 09:55 
А другие не портят данные в такой ситуации?)

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Аноним , 14-Сен-21 22:58 
Шифрование данных на существующем разделе NTFS без его переформатирования    
1. Нажмите правой кнопкой по диску, выберите пункт Включить Bitlocker
2. Готово

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено пох. , 16-Сен-21 12:31 
Он, гад, еще и глумится над убогими!


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено noLimits , 14-Окт-21 00:42 
кто тут убогий так это этот ... юзер с битлокером, зашифрует себя так что потом фиг че достать

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено пох. , 14-Окт-21 08:23 
> кто тут убогий так это этот ... юзер с битлокером, зашифрует себя
> так что потом фиг че достать

кoкoкoкoкoнечно! То ли дело адепты шва6одки - всегда могут все достать, даже если пароли забыли и ключи потеряли. Поскольку on-disk шифрования у них нет, и где-нибудь валяется нешифрованный оригинал, который забыли удалить/удалили но восстановим.


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Аноним , 16-Окт-21 02:25 
>> кто тут убогий так это этот ... юзер с битлокером, зашифрует себя
>> так что потом фиг че достать
> кoкoкoкoкoнечно! То ли дело адепты шва6одки - всегда могут все достать, даже
> если пароли забыли и ключи потеряли. Поскольку on-disk шифрования у них
> нет, и где-нибудь валяется нешифрованный оригинал, который забыли удалить/удалили но восстановим.

Но то что битлокер ломается (как миниум определенные версии) и у служб в нем есть закладки известно давно, а про luks такого не скажешь.


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Гость , 20-Окт-21 15:29 
При шифровании битлокером предлагается сохранить в надёжном месте ключ для восстановления. Если юзер проигнорировал рекомендацию или сохранил этот ключ в ненадёжном месте - его проблема, а не битлокера.

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Аноним , 19-Сен-21 20:49 
А бэкап всего диска, ключ и пароль от ключа для надёжности отправляются в облако? А то вдруг забуду или потеряю...

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Аноним , 21-Окт-21 15:11 
не отвлекайтесь, молодой человек, продолжайте переустанавливать шындоус

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено kusb , 15-Сен-21 21:51 
А зашифровать корень в первом варианте и чем тогда он будет хуже обычного? Или папку нужно пересоздавать. Наверное можно обойти.

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Карабьян , 01-Окт-21 01:01 
В последнем случае ближе к концу раздел назван sdXY, хотя ранее sda4

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Карабьян , 01-Окт-21 06:15 
Хочу добавить, в e4crypt каталог шифрования можно указать сразу при создания ключа командой add_key

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Anonim , 05-Окт-21 15:40 
Есть же fscrypt, зачем эти извращения с e4crypt?

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Садама , 07-Ноя-21 13:08 
Полнодисковое шифрование Windows Linux установленных систем. Зашифрованная мультизагрузка
https://habr.com/ru/post/482696/

Как минимум ознакомться с туториалом.


"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Прыгающий Ленивец , 22-Мрт-23 01:59 
В 20м то году когда писался туториал было странно использовать  mbr разметку и legacy boot вместо uefi

"Шифрование данных на существующем разделе ext4 без его переформатирования"
Отправлено Сталинус , 02-Май-23 09:09 
А толку выстовлять в линукс галочку на зашифровать все если в итоге пароль на ликс сбрасывается на раз два. Известная проблнма на которую всем пох. Пароль сбрасывается легче чем на винде. И еще линь любит все безбожно журналировать как бы ты неусерался шифрованием всегда найдется файлик с блокнотом которое аждое нажатие кнопки журналирует. Т.е пишит логи.