1

Мне нужно настроить зашифрованный диск на RHEL6, но ключ должен храниться на сетевом сервере / базе данных, зашифрованный диск должен расшифровываться во время загрузки или после загрузки с использованием этого ключа и без запроса какой-либо парольной фразы.

3 ответа3

1

Вы можете настроить это с помощью скрипта ключа crypttab, например, запись crypttab:

# target,sourcedev,keyfile,options
cdisk3 /dev/sda3 none cipher=twofish,hash=ripemd160,size=256,keyscript=/path/to/script

Сценарий будет выполнен с ключевым файлом (в данном случае "none") в качестве единственного аргумента, а выходные данные из сценария будут использованы в качестве ключа.

Он получает остальную часть входных данных как переменные окружения:

       CRYPTTAB_NAME
           The target name

       CRYPTTAB_SOURCE
           The source device

       CRYPTTAB_KEY
           The key file

       CRYPTTAB_OPTIONS
           A list of exported crypttab options

       CRYPTTAB_OPTION_<option>
           The value of the appropriate crypttab option, with value set to 'yes'
           in case the option is merely a flag.

Я получил большую часть этого из справочной страницы crypttab(5), она лучше написана, чем я могу предоставить.

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

0

ИМХО, вы можете сделать это только для не загрузочных и некорневых дисков. Чтобы получить доступ к сетевой службе и получить учетные данные, Linux должен был бы:

  1. Загрузите систему
  2. Настройте удаленное монтирование
  3. Получить кредиты
  4. Смонтировать диск

Вы можете написать для него скрипт оболочки и убедиться, что он запускается во время загрузки. Имейте в виду, что вам придется хранить учетные данные общего сетевого ресурса / базы данных в клиентской системе, что побеждает цель :)

0

Уже существует инструмент, позволяющий делать практически все, что вы хотите, по крайней мере, предполагая, что вы не загружаетесь с такого зашифрованного тома (автоматическая загрузка с зашифрованного тома сопряжена с собственным набором проблем, и хотя есть явные признаки того, что что это выполнимо, я не думаю, что я хотел бы попробовать это по крайней мере с первой попытки). Это называется Мандос.

По сути, он хранит ключ в отдельной системе (на сервере Mandos) и позволяет клиенту запрашивать его безопасным способом. Когда у клиента есть ключ, этот ключ можно использовать для разблокировки контейнера LUKS.

Конечно, вы должны были бы надлежащим образом защитить сервер Mandos, но это проблема с любым хранилищем ключей, и, конечно, она не уникальна для Mandos.

Существует схема того, как это работает на веб-сайте.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .