Назад | Перейти на главную страницу

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

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

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

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

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

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

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

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

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

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

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

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

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

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