Мы запускаем несколько виртуальных машин Solaris / Linux на ESXi, которые содержат очень конфиденциальные зашифрованные данные, которые в конечном итоге расшифровываются по мере необходимости в памяти.
Все в порядке, за исключением файлов подкачки ESXi, которые потенциально могут хранить некоторые из расшифрованных данных, причем изюминкой торта является то, что эти файлы не будут удалены в случае сбоя хоста.
Есть ли способ полностью отключить эти файлы?
Мы уже пытались зарезервировать всю выделенную оперативную память для виртуальных машин для каждой виртуальной машины, но файлы все равно создаются.
Что нужно для того, чтобы подкачка ESXi была полностью отключена для всего хоста или только для некоторых виртуальных машин?
Это интересный вопрос. Я никогда не думал о безопасности данных на уровне гипервизора ... обычно политики безопасности и усиление защиты вращаются вокруг задач, специфичных для ОС (ограничение демонов, портов, отключение файлов ядра, параметры монтирования файловой системы и т. Д.)
Но через некоторое время быстрое исследование (и бег strings
против активных файлов .vswp VMWare) показывает, что определенно можно извлекать данные из файлов .vswp, находящихся в хранилище данных VMWare. это ссылка на сайт помогает объяснить жизненный цикл таких файлов.
В вашем случае, я думаю, ваш подход будет определяться политикой безопасности и требованиями. По моему опыту в области финансов и проведения аудитов, я думаю, что приемлемым подходом было бы ограничение / безопасность доступа к хост-серверу. Напомним, что по умолчанию на вашем хосте ESXi не включен SSH или консольный доступ. Включение этих функций вызывает событие / предупреждение в vCenter, которое необходимо переопределено вручную, поэтому предполагается, что аудит доступа - лучший способ контролировать доступ к этой информации.
Если есть опасения по поводу того, кто может иметь доступ к серверу, возможно, не существует технического решения административной проблемы. Я проверю некоторые другие источники, чтобы узнать, есть ли способ ограничить использование файлов .vswp.
--редактировать--
Вы можете зарезервировать всю гостевую RAM. Вы не указываете, какую версию VMWare вы используете, но в моей установке 5.1 есть возможность Зарезервировать всю гостевую память. Включение этой опции создает нулевой длины .vswp, а не файл, равный размеру ОЗУ, выделенного виртуальной машине. Не обращайте внимания на файл vmx - *. Vswp. Это новое в ESXi 5.x, и это не связанный с нехватка памяти операционной системы гостя (это для кучи процессов VMX, гостевых периферийных устройств и агентов управления). Кроме того, файлы vmx - *. Vswp можно отключить, установив sched.swap.vmxSwapEnabled
к FALSE
.
Я думаю, это даст вам то, о чем вы просите.
Без резервирования памяти (по умолчанию):
root@deore:/volumes/vol2/staging/Test_Bed# ls -al | grep vswp
-rw------- 1 nfs nobody 3221225472 Dec 23 13:31 Test_Bed-ad493981.vswp
-rw------- 1 nfs nobody 115343360 Dec 23 13:31 vmx-Test_Bed-2907257217-1.vswp
С заблокированным резервированием памяти:
root@deore:/volumes/vol2/staging/Test_Bed# ls -al | grep vswp
-rw------- 1 nfs nobody 0 Dec 23 13:38 Test_Bed-ad493981.vswp
-rw------- 1 nfs nobody 115343360 Dec 23 13:38 vmx-Test_Bed-2907257217-1.vswp
Похоже, вы неправильно пытаетесь решить проблему. Попытка остановить замену машины не гарантирует, что конфиденциальные данные не попадут на диск. А как насчет дампов ядра и т. Д.? Если у вас есть записываемое устройство, которое было в системе, содержащей конфиденциальные данные, его не следует считать «чистым», и его следует уничтожить по окончании использования.
Если ваши данные настолько конфиденциальны, вам следует физически защитить систему. Каждый, кому нужен доступ к системе, должен иметь соответствующую проверку и иметь на это специальное разрешение. Их деятельность должна быть авторизована, регистрироваться, контролироваться и т. Д.
В сценарий, который вы описываете легко управляется. У вас должны быть процедуры для уничтожения устройств, которые содержат конфиденциальные данные, соразмерные с конфиденциальностью данных. Вы просто не выпускаете устройство из своей безопасной среды, если оно не подписано соответствующим органом, после чего оно перестает быть вашей проблемой.
Этого должно быть достаточно для шифрования файлов подкачки виртуальных машин, которые создает ESXi. Пытаться размещение файлов подкачки в хранилище данных которые зашифрованы, например, SAN с шифрованием или самошифрующийся диск.