Настройка зашифрованного тома данных в SUSE Linux Enterprise Server упрощается, если разделить задачу на два этапа. LUKS, или Linux Unified Key Setup, защищает блочное устройство, такое как диск или раздел. После разблокировки этого устройства Linux предоставляет доступ к обычному отображенному устройству в каталоге /dev/mapper/, где можно создать файловую систему и смонтировать её, как любое другое хранилище.
/dev/sdbВ этом руководстве в качестве примера используется выделенный дополнительный диск . Смонтированный том будет отображаться по адресу /data/secure, а разблокированное сопоставление будет называться securedata. Замените эти имена значениями на вашем сервере.
Примечание к версии: описанный ниже рабочий процесс с использованием командной строки подходит для текущих версий SUSE Linux Enterprise Server, включая [ cryptsetupуказать версию]. Документация SUSE Linux Enterprise Server 16.0, опубликованная в 2026 году, включает поддержку зашифрованного хранилища в Cockpit, а руководство по безопасности и усилению защиты SLES 15 SP7 описывает зашифрованные разделы на основе LUKS в YaST. Здесь используется интерфейс командной строки, поскольку он делает каждый уровень хранилища видимым и упрощает поиск и устранение неисправностей. См. документацию SUSE Linux Enterprise Server 16.0 и руководство по шифрованию SLES 15 SP7 для получения информации от поставщика.
Чем занимается LUKS и чем она не занимается.
LUKS — это стандартный формат Linux для зашифрованных блочных устройств на диске. Он хранит метаданные шифрования в заголовке LUKS и позволяет одному зашифрованному тому иметь несколько учетных данных для разблокировки. В текущей версии cryptsetupобычно создается LUKS2, если вы явно не запросите другой формат.
Шифрование защищает данные в состоянии покоя. Если кто-то украдет выключенный диск, он не сможет прочитать зашифрованные данные без действительного ключа или парольной фразы. Однако после разблокировки и монтирования тома доступ контролируется обычными правами доступа Linux. LUKS не защищает файлы от процессов, которые уже имеют законный доступ к смонтированной файловой системе.
Прежде чем начать
Перед выполнением команд, приводящих к удалению данных из хранилища, подготовьте следующие элементы:
- Выделенный пустой диск или раздел. В этом руководстве используется
/dev/sdb.
- Доступ с правами root
sudoили через оболочку с правами root.
- Эта
cryptsetupутилита. Проверьте наличие cryptsetup --version. Если она не установлена, установите пакет через стандартный процесс управления программным обеспечением SUSE.
- Надежная кодовая фраза, которую можно восстановить с помощью утвержденной вашей организацией процедуры восстановления учетных данных.
- Актуальная резервная копия всего важного содержимого целевого устройства.
Критическое предупреждение: cryptsetup luksFormat записывается новый заголовок LUKS, что делает существующие данные на целевом устройстве недоступными. SUSE также предупреждает, что преобразование существующего раздела в зашифрованное хранилище в работающей системе уничтожает данные на этом разделе. Не продолжайте, пока не убедитесь в правильности идентификации целевого устройства.
Шаг 1: Определите правильный диск
Для начала перечислите блочные устройства:
lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINTS
lsblk -f
Проверьте размер, имя устройства, существующую файловую систему и точки монтирования. В этом примере — /dev/sdbэто отдельный диск объемом 20 ГБ без смонтированной файловой системы. Вместо этого ваш сервер может использовать раздел, например /dev/sdb1, , имя NVMe, например /dev/nvme1n1p1, , или виртуальный диск, например /dev/vdb, .
Подпись: Перед выполнением любой команды форматирования LUKS проверьте целевое устройство по имени, размеру и состоянию монтирования.
Не следует идентифицировать диск только по его букве. Имена устройств могут меняться после изменения аппаратной конфигурации или конфигурации виртуальной машины. Перед выполнением деструктивных команд сравните данные lsblkс информацией о хранилище, настройками гипервизора или данными о представлении SAN.
Шаг 2: Инициализация устройства с помощью LUKS.
Создайте зашифрованный контейнер:
sudo cryptsetup luksFormat /dev/sdb
luksFormatИнициализирует метаданные LUKS и запрашивает подтверждение и парольную фразу. В текущей версии cryptsetup по умолчанию используется LUKS2. Результат можно проверить позже с помощью:
sudo cryptsetup luksDump /dev/sdb
Подпись: Этап форматирования LUKS является деструктивным, поэтому cryptsetup запрашивает явное подтверждение перед созданием зашифрованного контейнера.
Избегайте добавления параметров шифрования, размера ключа или PBKDF только потому, что вы увидели их в старом руководстве. Cryptsetup и SUSE предоставляют современные значения по умолчанию, и изменение их без документально подтвержденных требований может снизить совместимость или затруднить восстановление.
Шаг 3: Откройте зашифрованное устройство
Контейнер LUKS нельзя отформатировать с помощью обычной файловой системы, пока он не будет разблокирован. Откройте его и создайте сопоставление device-mapper с именем securedata:
sudo cryptsetup open /dev/sdb securedata
После ввода парольной фразы расшифрованное отображение будет выглядеть следующим образом:
/dev/mapper/securedata
Вы можете подтвердить это следующим образом:
sudo cryptsetup status securedata
lsblk -f
Подпись: Разблокировка контейнера LUKS создает отображенное блочное устройство с именем securedataв каталоге /dev/mapper.
Шаг 4: Создайте файловую систему на разблокированном сопоставлении.
Слой LUKS шифрует блоки; сам по себе он не предоставляет каталоги или файлы. Файловая система создается на отображаемом устройстве, а не на зашифрованном диске. В этом примере используется ext4:
sudo mkfs.ext4 /dev/mapper/securedata
Если ваш стандарт хранения данных требует XFS или другой поддерживаемой файловой системы, используйте её. Важное правило: файловая система должна находиться в каталоге /dev/mapper/securedata, а /dev/sdbконтейнер LUKS должен оставаться зашифрованным.
Подпись: Создайте обычную файловую систему Linux внутри разблокированного сопоставления, а не непосредственно на зашифрованном резервном диске.
Шаг 5: Создайте точку монтирования и проверьте работу тома.
Создайте каталог и смонтируйте новую файловую систему:
sudo mkdir -p /data/secure
sudo mount /dev/mapper/securedata /data/secure
df -h /data/secure
На этом этапе том пригоден для использования. При необходимости создайте небольшой тестовый файл, прочитайте его, а затем удалите. Это позволит проверить полный путь от разблокировки LUKS через файловую систему до смонтированного каталога.
Подпись: Успешное тестовое монтирование подтверждает, что расшифрованное отображение и его файловая система пригодны для использования перед настройкой поведения при загрузке.
Шаг 6: Запись стабильных UUID.
Для обеспечения постоянной конфигурации отдавайте предпочтение стабильным идентификаторам, а не предположению, что диск всегда будет называться /dev/sdb. Отобразите как UUID LUKS, так и UUID файловой системы:
sudo blkid /dev/sdb
sudo blkid /dev/mapper/securedata
Исходное устройство должно сообщать тип, например crypto_LUKS, . Отображенное устройство должно сообщать тип файловой системы и свой собственный UUID. Важно различать эти два UUID: UUID LUKS идентифицирует зашифрованный контейнер, а UUID файловой системы идентифицирует файловую систему внутри него.
Подпись: Зашифрованный контейнер и находящаяся внутри него файловая система имеют отдельные идентификаторы, которые служат различным целям конфигурации.
Шаг 7: Настройка разблокировки и монтирования при загрузке.
В системах Linux на основе systemd /etc/crypttabописываются зашифрованные блочные устройства, которые должны быть открыты во время загрузки. Базовая запись, запрашиваемая с помощью парольной фразы, содержит четыре поля: имя сопоставления, зашифрованное устройство, файл ключа и параметры.
Используя UUID LUKS из предыдущего шага, пример записи выглядит следующим образом:
securedata UUID=<LUKS-UUID> none luks
Затем добавьте смонтированную файловую систему в /etc/fstab. Вы можете указать в качестве источника отображаемое устройство или его UUID файловой системы. В руководстве SUSE для SLES 15 SP7 отмечается, что YaST обычно использует имя устройства-маппера для вновь настроенных точек монтирования LUKS, поскольку оно надежно работает с генераторами systemd. Простой вариант записи:
/dev/mapper/securedata /data/secure ext4 defaults 0 2
Заголовок: Данная crypttabзапись открывает зашифрованный контейнер, а также fstabмонтирует файловую систему, доступную через устройство сопоставления файлов.
Перед перезагрузкой проверьте наличие простых ошибок. Вы можете выполнить следующие действия:
sudo systemctl daemon-reload
sudo mount -a
mount -aЭто помогает выявить множество fstabпроблем, но не заменяет проверку фактической последовательности разблокировки при загрузке.
Шаг 8: Перезагрузите компьютер и проверьте реальный путь загрузки.
Для обычного вторичного тома данных редактирование /etc/crypttabобычно /etc/fstabявляется ключевым параметром для постоянной конфигурации. Перезагрузите сервер и убедитесь, что вы получаете ожидаемый запрос на ввод парольной фразы, открывается сопоставление LUKS и файловая система монтируется:
sudo reboot
lsblk -f
sudo cryptsetup status securedata
findmnt /data/secure
Если зашифрованное устройство необходимо на ранней стадии initramfs — например, потому что оно содержит хранилище, необходимое до того, как обычная корневая файловая система станет полностью доступна, — ваша схема может также потребовать перегенерации initramfs с помощью dracutкоманды `.`. Не следует механически добавлять перестройку initramfs в каждую конфигурацию тома данных; необходимость этого зависит от того, когда устройство должно быть доступно во время загрузки.
Подпись: Пересборка initramfs dracutактуальна для зашифрованного хранилища на ранней стадии загрузки; для обычного вторичного тома данных может потребоваться только crypttab, fstab, и проверка перезагрузки.
Создайте резервную копию заголовка LUKS.
Заголовок LUKS содержит важные метаданные и информацию о слотах ключей. После того, как том заработает, рекомендуется создать резервную копию заголовка в автономном режиме:
sudo cryptsetup luksHeaderBackup /dev/sdb --header-backup-file /root/securedata-luks-header.img
Затем переместите резервную копию в защищенное место, отдельное от зашифрованного диска. Относитесь к резервной копии как к конфиденциальной информации: резервная копия заголовка плюс парольная фраза, действовавшая на момент создания резервной копии, может быть достаточной для расшифровки области данных. Проект cryptsetup описывает это поведение в своем официальном FAQ по cryptsetup .
Распространенные ошибки новичков, которых следует избегать.
| Ошибка | Почему это важно | Более безопасный подход |
Запуск luksFormatс неправильного диска. | Имеющиеся данные становятся недоступными. | В первую очередь проверьте название устройства, его размер, точки крепления и данные об используемом хранилище. |
Форматирование /dev/sdbв ext4 после создания LUKS | Это перезаписывает слой LUKS, а не создает внутри него файловую систему. | Запустить mkfsна /dev/mapper/securedata. |
| Забыли парольную фразу? | Система LUKS разработана таким образом, что данные невозможно восстановить без зарегистрированного ключа. | Используйте утвержденный вашей организацией процесс восстановления секретной информации и храните проверенные материалы для восстановления. |
| Предположим, что шифрование заменяет права доступа Linux. | Смонтированные данные доступны процессам с достаточными правами доступа операционной системы. | Обеспечьте надлежащее управление правами доступа, разрешениями, политикой SELinux/AppArmor и средствами контроля приложений. |
| Использование нестабильных имен устройств в конфигурации загрузки | Буквы дисков могут меняться. | При необходимости используйте UUID или стабильные имена мапперов. |
| Пропуск теста перезагрузки | Ручное монтирование может работать даже при неправильной конфигурации во время загрузки. | Проверьте фактическую последовательность перезапуска во время планового технического обслуживания. |
YaST и Cockpit являются достойными альтернативами.
Если вы предпочитаете графический интерфейс, SUSE предоставляет поддерживаемые интерфейсы управления. В руководстве по безопасности и усилению защиты SLES 15 SP7 описана настройка зашифрованных разделов в инструменте Expert Partitioner от YaST. В документации SUSE Linux Enterprise Server 16.0 также описана настройка зашифрованных разделов в Cockpit, включая пароль и параметры шифрования. Используйте документацию по Expert Partitioner для SLES 15 SP7 или руководство по администрированию Cockpit для SLES 16.0, если ваши операционные стандарты отдают предпочтение этим инструментам.
Окончательная проверка
Успешная установка должна сохраняться после выполнения нескольких команд. Вы должны иметь возможность перезагрузить систему, разблокировать том предполагаемым способом, подтвердить securedataактивность сопоставления, убедиться /data/secureв монтировании и прочитать ожидаемые файлы. Вы также должны знать, где хранятся данные процесса восстановления парольной фразы и резервная копия заголовка LUKS.
Вот полезная модель мышления, которую следует придерживаться: физический диск содержит контейнер LUKS; разблокировка диска создает устройство сопоставления; устройство сопоставления содержит файловую систему; и файловая система монтируется в каталог. Как только эти уровни станут ясны, большинство задач по устранению неполадок LUKS станут намного проще.