HOWTO Зашифруйте установку Ubuntu 18.04 LTS с двумя дисками: ОС на основном SSD, / home на дополнительном HDD
Это руководство по полному шифрованию диска при установке Ubuntu 18.04 LTS. Не путать с шифрованием только каталога / home , который, я считаю, был удален в качестве опции во время установки. Эти инструкции предназначены для Ubuntu 18.04 LTS, но должны работать с 16.04 LTS.
В этом руководстве предполагается, что вы знакомы с Ubuntu (Linux) и можете установить ОС с USB-ключа или, по крайней мере, понять, как выполнить эту процедуру - если вы не можете, найдите кого-то, кто может, и вы оба проходите через нее. , В этом руководстве также предполагается, что вы создали резервную копию ВСЕХ ваших данных до начала этой процедуры, поскольку вы уничтожите все ДАННЫЕ на ВСЕХ дисках во время этой процедуры.
ВЫ БЫЛИ ПРЕДУПРЕЖДЕНЫ!
Это руководство представляет собой во многом слияние двух процедур отсюда (сообщение в блоге Дэвида Йейтса) ( https://davidyat.es/2015/04/03/encrypting-a-second-hard-drive-on-ubuntu-14- 10-post-install / ) и запись Ask Ubuntu ( перенести домашнюю папку на второй диск ).
Перво-наперво, почему мы хотим это сделать? Потому что, если у вас есть ноутбук или другие конфиденциальные данные на компьютере, и они могут быть украдены или утеряны, необходимо иметь возможность защитить данные. Вы можете нести юридическую ответственность за защиту данных. Во-вторых, многие (большинство) систем теперь поставляются с маленьким SSD (быстрым) для ОС и большим HDD (медленным) для данных. В-третьих, шифрование только каталога / home теперь считается плохой идеей, поскольку оно подвергает вас риску взлома / home (не спрашивайте меня, как это сделать, я не смог), И частичное шифрование замедляет система в значительной степени. FDE требует меньших накладных расходов и, следовательно, оказывает минимальное влияние на производительность системы.
ЧАСТЬ I: Установите Ubuntu 18.04 LTS на основной диск (обычно на SSD)
Установите Ubuntu 18.04 LTS на свой меньший (обычно SSD) и отметьте (i) стирание диска, (ii) шифрование установки и (iii) управление LVM.
Это приведет к зашифрованному SSD, но не коснется второго (обычно HDD) диска. Я предполагаю, что ваш второй диск - это новый, неформатированный диск, но на самом деле не имеет значения, что находится на диске до этой процедуры. Мы собираемся уничтожить все данные на этом диске. Мы собираемся использовать пакет программного обеспечения из Ubuntu для подготовки диска (не уверен, строго ли необходима эта подготовка, но это то, что я тестировал). Чтобы подготовить это для вашего скоро перемещаемого / домашнего раздела (папки), вы должны отформатировать его с помощью инструмента с графическим интерфейсом gParted .
sudo apt install gparted
Откройте gParted и перейдите ко второму жесткому диску (внимательно проверьте / dev / sd? X ) и удалите все & все существующие разделы, затем создайте новое ПЕРВИЧНОЕ РАЗДЕЛЕНИЕ, используя файловую систему ext4 . Вы могли бы также маркировать это, но это не обязательно. Выберите «Применить». Один gParted завершен, закройте gParted, и теперь вы готовы установить контейнер LUKS на второй диск и затем отформатировать его. В следующих командах замените sd? X именем вашего ВТОРОГО диска (не основного), например sda1 .
sudo cryptsetup -y -v luksFormat /dev/sd?X
Затем вам нужно будет расшифровать новый раздел, чтобы вы могли отформатировать его с помощью ext4 , современной файловой системы Linux, предпочитаемой Ubuntu.
sudo cryptsetup luksOpen /dev/sd?X sd?X_crypt
sudo mkfs.ext4 /dev/mapper/sd?X_crypt
Если вы хотите использовать свой второй жесткий диск в качестве обычного, часто доступного жесткого диска (как при переносе на него раздела / home , что и является целью части II ), есть способ автоматически смонтировать и расшифровать второй диск при запуске, когда ваш компьютер запрашивает основной пароль для расшифровки жесткого диска. Кроме того: я использую ту же самую парольную фразу для ОБОИХ моих дисков, поскольку я суеверен и вижу больше проблем с двумя разными парольными фразами.
Сначала вам нужно создать ключевой файл, который будет действовать как пароль для вашего дополнительного диска, и вам не придется вводить каждый раз при запуске (например, ваш основной пароль шифрования жесткого диска).
sudo dd if=/dev/urandom of=/root/.keyfile bs=1024 count=4
sudo chmod 0400 /root/.keyfile
sudo cryptsetup luksAddKey /dev/sd?X /root/.keyfile
После того, как ключевой файл был создан, добавьте следующие строки в / etc / crypttab, используя nano
sudo nano /etc/crypttab
Добавьте эту строку, сохраните и закройте файл ( / etc / crypttab ).
sd?X_crypt UUID=<device UUID> /root/.keyfile luks,discard
Чтобы получить UUID вашего раздела для входа в файл / etc / crypttab , используйте эту команду (вам нужно использовать sudo, чтобы все ваши разделы отображались):
sudo blkid
Значение, которое вы хотите, это UUID / dev / sd? X , а не dev / mapper / sd? X_crypt . Также обязательно скопируйте UUID, а не PARTUUID.
Итак, в этот момент (закрытый и сохраненный файл / etc / crypttab ) вы должны иметь возможность войти в систему с вашей установкой Ubuntu (введя пароль для расшифровки вашего основного диска), и она должна расшифровать ОБА ваш основной и дополнительный диски. Вы должны проверить, не происходит ли это в противном случае. STOP ; и решить вопрос (ы). Если у вас это не работает, и вы переехали / домой , у вас будет нерабочая система.
Перезагрузитесь и проверьте, действительно ли это (дешифрование последовательностью) на самом деле. Если дополнительный диск автоматически расшифровывается, при выборе «Другие местоположения» второй диск должен появиться в списке и иметь значок блокировки, но значок должен быть разблокирован .
Если второй диск автоматически расшифровывается (как и должно быть), перейдите к части II , указав второй диск в качестве расположения по умолчанию для вашей папки / home (с большим объемом пространства).
Часть II: перенесите ваш / домашний раздел на дополнительный диск ( например, жесткий диск)
Нам нужно создать точку монтирования для дополнительного диска, временно смонтировать новый раздел (дополнительный жесткий диск) и переместить / home на него:
sudo mkdir /mnt/tmp
sudo mount /dev/mapper/sd?X_crypt /mnt/tmp
при условии, что / sd? X - новый раздел для / home (как указано выше)
Теперь мы копируем вашу / home папку в новое / home расположение с основного диска (SSD) на дополнительный диск (HDD).
sudo rsync -avx /home/ /mnt/tmp
Затем мы можем смонтировать новый раздел как / home с
sudo mount /dev/mapper/sd?X_crypt /home
чтобы убедиться, что все папки (данные) присутствуют.
ls
Теперь мы хотим сделать новое / домашнее местоположение на дополнительном диске постоянным, нам нужно отредактировать запись fstab для автоматического монтирования вашего перемещенного / домашнего на вторичный расшифрованный жесткий диск.
sudo nano /etc/fstab
и добавьте следующую строку в конце:
/dev/mapper/sd?X_crypt /home ext4 defaults 0 2
Сохраните и закройте файл.
Перезагрузка. После перезагрузки ваш / home должен находиться на новом дополнительном диске, и у вас должно быть достаточно места для ваших данных.
/etc/cryptab
файл. Вам также необходимо обновить initramfs. Я никогда не документировал конкретный процесс, о котором идет речь, но я устанавливаю с ручным разделением и 3 приводами. Поверьте мне, миграция после установки не сложнее.