Подходы для шифрования диска на сервере Linux

Какие существуют подходы для полного шифрования диска на удаленном сервере (скажем, в центре данных)? В Windows мы можем просто включить Bitlocker с TPM. Затем сервер может перезагрузиться, и для атаки требуется либо захват машины во время работы и выгрузка оперативной памяти, либо повреждение TPM. В Linux что доступно?

До сих пор я нашел план IBM, описывающий, как хранить ключи dm-crypt в TPM. Это лучший подход?

http://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaai/tpm/liaaitpm_pdf.pdf

2 ответа

Чтобы понять лучшее решение вашей проблемы, вам нужно уточнить, чего вы пытаетесь достичь. Другими словами, какова ваша модель угрозы? Кто твой нападающий? Вы упомянули, что для обхода шифрования потребовалось бы "взять машину во время работы" (под которой я предполагаю, что вы имеете в виду ее взлом), но это наиболее вероятный сценарий для совместного сервера. Шифрование диска в основном используется в случае физической кражи.

Вы также должны рассмотреть, какие данные вы защищаете. Вы упоминаете "полное шифрование диска", но требует ли оно шифрования, например, / usr? Если вы используете стандартный дистрибутив, то там нет ничего интересного. Не зная больше о том, что будет содержать сервер, трудно дать рекомендацию.

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

  • Простой сайт, показывающий некоторые продукты
  • Базовое приложение для заказа CRUD, написанное на Rails/Django/ что угодно
  • Postgres DB для информации о клиентах и ​​заказах

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

  • Оставьте большую часть машины незашифрованной (но сделайте как можно большую часть доступной только для чтения FS)
  • Создайте отдельный раздел для базы данных и зашифруйте его надежным паролем, используя любую из доступных систем шифрования Linux (ecryptfs и т. Д.).
  • После каждой перезагрузки входите в систему и монтируете раздел с ключом, который хранится в другом месте.
  • При перезагрузке сервер предупреждает меня

Вы упоминаете TPM, но TPM не помогает вам в ряде случаев, например, если злоумышленник получает права администратора. По этой причине TrueCrypt отклонил поддержку TPM.

Вы также можете использовать TPM с dm-crypt:
https://github.com/shpedoikal/tpm-luks
http://code.google.com/p/cryptsetup/wiki/FrequentlyAskedQuestions

Если встроенный в ramdisk initrd, SSH-сервер небольшого размера позволяет удаленно вводить пароль, чтобы разблокировать диск.

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

Другие вопросы по тегам