Главная
» Как сделать
»
Шифрование файла подкачки Debian 12 с помощью нового ключа при каждой загрузке.
Шифрование файла подкачки Debian 12 с помощью нового ключа при каждой загрузке.
В Debian 12 выделенный раздел подкачки можно шифровать новым случайным ключом при каждом запуске системы. Добавьте сопоставление случайного ключа в файл /etc/crypttab, а затем укажите /etc/fstabна сопоставленное устройство; приведенная ниже настройка использует существующий раздел и не требует переустановки Debian.
Эта процедура предназначена для обычного режима подкачки, а не для режима приостановки работы на диске (гибернации). Поскольку ключ удаляется при выключении, образ гибернации не может быть расшифрован при следующей загрузке. Если вам необходима гибернация, используйте вместо этого схему с постоянным ключом и собственной конфигурацией возобновления работы.
Перед изменением конфигурации подкачки
Убедитесь, что у вас есть отдельный раздел с файловой системой типа swap. Не используйте корневой раздел, раздел данных или диск, содержащий необходимые вам файлы. Приведенные ниже примеры имен устройств являются иллюстративными: замените их значениями из вашей системы.
Проверьте активные области подкачки и сопоставьте их со списком блочных устройств:
Найдите строку, где TYPEнаходится partи FSTYPE. swapЗапишите ее значение PARTUUIDи подтвердите, что это тот же раздел, что и показан в swapon --show. Идентификатор PARTUUIDидентифицирует сам раздел и остается стабильным при повторном создании области подкачки. UUID файловой системы подкачки может изменяться, поскольку зашифрованное отображение инициализируется заново при запуске.
В терминале отображается информация об активном устройстве подкачки и указывается строка его раздела, отличающаяся от корневой файловой системы и файловой системы данных.
Перед редактированием сделайте резервную копию /etc/fstab. Если раздел используется, отключите только область подкачки:
sudo cp -a /etc/fstab "/etc/fstab.before-cryptswap.$(date +%s)"
sudo swapoff /dev/nvme0n1p3
Замените /dev/nvme0n1p3на проверенное устройство. Отключение файла подкачки перемещает все хранящиеся там страницы обратно в память. Если команда не выполняется или машина испытывает сильную нагрузку на память, остановитесь здесь, закройте ресурсоемкие задачи и повторите попытку, когда будет достаточно доступной оперативной памяти.
Перед изменением конфигурации при загрузке отключите подтвержденный раздел подкачки.
Настройте сопоставление с шифрованием случайным ключом.
Откройте файл crypttab с помощью редактора, имеющего права root:
sudoedit /etc/crypttab
Добавьте одну строку, заменив YOUR-PARTUUIDна фактический идентификатор раздела. Сохраняйте cryptswapединообразие имени сопоставления на следующем шаге.
/etc/crypttabУказывает Debian, какое зашифрованное блочное устройство следует создать при запуске. Источник PARTUUID=указывает на необработанный раздел; /dev/urandomпредоставляет новый ключ; plainвыбирает dm-crypt без постоянного заголовка LUKS; и swapзапрашивает у вспомогательной программы crypttab инициализацию отображенного устройства как раздела подкачки. Шифр, размер ключа и хеш указываются явно, в соответствии с примером crypttab из Debian Bookworm . Отображение отображается как /dev/mapper/cryptswap. Эта swapопция запускается mkswapна этом отображенном устройстве при запуске, поэтому его содержимое переинициализируется при каждой загрузке. Указывайте источник только на проверенный вами выделенный раздел подкачки; эта опция является деструктивной, если она направлена на раздел, содержащий файлы.
В записи crypttab используется стабильный идентификатор раздела и новый случайный ключ для сопоставления с именем cryptswap.
Теперь откройте файл /etc/fstab. Закомментируйте или удалите старую строку, которая включает необработанный раздел подкачки, включая любые строки, которые ссылаются на его текущий UUID раздела подкачки. Добавьте вместо нее следующую запись:
/dev/mapper/cryptswap none swap sw 0 0
Не оставляйте обе записи активными: это может включить незашифрованный раздел одновременно с зашифрованным отображением. Файл fstabописывает области подкачки, включенные при запуске, в то время как генератор systemd cryptsetup в Debian считывает /etc/crypttabи создает соответствующие модули. См. руководство по генератору systemd cryptsetup в Bookworm и руководство по fstab в Debian .
После того, как сопоставление станет доступно, fstab включит подкачку через /dev/mapper/cryptswap, а не через сам раздел.
Перезагрузите компьютер и проверьте зашифрованный файл подкачки.
Сохраните оба файла и перезагрузите систему, чтобы Debian мог создать сопоставление при запуске:
sudo reboot
После повторного входа в систему проверьте активный путь подкачки и сопоставление dm-crypt:
swapon --show
sudo cryptsetup status cryptswap
В списке файлов подкачки следует указать имя /dev/mapper/cryptswapраздела, а не сам раздел. В выводе команды cryptsetup status должно отображаться активное отображение в открытом виде и ожидаемый базовый раздел. Эта вторая проверка важна: наличие записи о файле подкачки само по swapon --showсебе не доказывает, что он зашифрован.
PARTUUIDЕсли сопоставление отсутствует, проверьте правильность написания lsblkи просмотрите журнал загрузки с помощью команды sudo journalctl -b -u systemd-cryptsetup@cryptswap.service. Убедитесь, что старая запись raw-device больше не активна в /etc/fstab. Не запускайте команду mkswapнепосредственно на необработанном разделе после настройки сопоставления.
Узнайте, что защищает это изменение.
При каждой загрузке генерируется новый ключ, поэтому содержимое, записанное в файл подкачки в течение этой сессии, шифруется на блочном устройстве, а ключ предыдущей сессии не сохраняется после выключения. Это полезно, когда устройство можно выключить и проверить его содержимое. При этом не шифруется остальная часть диска, не защищаются данные во время работы Debian и не происходит автоматического удаления открытого текста, который мог остаться на разделе до преобразования. Если старое содержимое файла подкачки является конфиденциальным, его очистку следует рассматривать как отдельную задачу, специфичную для хранилища; форматирование на уровне файловой системы не гарантирует безопасного удаления, особенно на SSD-накопителях.
В руководстве по установке Debian Bookworm описывается, что шифрование с использованием случайного ключа подходит для файла подкачки, и отмечается, что оно предотвращает восстановление образа гибернации после перезагрузки. См. раздел encrypted-volume в руководстве по установке Debian 12. Для активного устройства используйте две приведенные выше команды проверки: маппер должен быть активен, а его резервное устройство должно соответствовать выбранному вами разделу.