停止 dm-crypt 设备,当加密实例被挂起/停止¶
https://blueprints.launchpad.net/nova/+spec/stop-dmcrypt-on-suspend
当具有加密 LVM 临时存储的实例被挂起或关机时,断开 dm-crypt 设备与加密 LVM 卷的连接。
问题描述¶
最近引入的 LVM 临时存储加密功能可以保护用户静态数据。当前实现方式是在实例终止后使用户数据不可读。当实例处于活动状态(例如,运行、暂停、挂起或关机)时,在计算主机上,只有超级用户才能读取数据。通过在实例挂起或关机时断开 dm-crypt 设备并从内存中清除加密密钥,可以进一步加强这种防止未经授权访问的保护。dm-crypt 设备允许访问解密的数据,因此断开它将使任何没有密钥的人都无法读取数据。
用例¶
一个运行敏感数据的加密实例被停止但未销毁 – 工作稍后将恢复。
项目优先级¶
无
提议的变更¶
该更改将在 libvirt.driver.power_off() 和 libvirt.driver.suspend() 中添加代码以停止 dm-crypt 设备并清除密钥,以及在 libvirt.driver.power_on() 和 libvirt.driver.resume() 中添加代码以检索实例临时加密密钥并重新启动 dm-crypt 设备。
备选方案¶
没有真正的替代方案。
数据模型影响¶
无
REST API 影响¶
无
安全影响¶
当实例关机或挂起时,用户数据将无法被任何人访问。
通知影响¶
无
其他最终用户影响¶
无
性能影响¶
对于加密实例,上电和恢复操作的速度会略慢。
其他部署者影响¶
无
开发人员影响¶
无
实现¶
负责人¶
- 主要负责人
dgenin (Dan Genin)
工作项¶
为挂起()/恢复() 添加 dm-crypt 停止/重启功能。
为 power_off()/power_on() 添加 dm-crypt 停止/重启功能。
依赖项¶
无
测试¶
将编写单元测试和压力测试来验证所提议功能的正确运行。
文档影响¶
应在 OpenStack 安全指南中提及将静态数据安全扩展到关机和挂起实例。
参考资料¶
无