第 2 章 主机安全性
在红帽企业 Linux 系统上部署虚拟化技术时,主机负责管理和控制物理设备、存储和网络以及所有虚拟机的访问权限。如果主机系统泄露,则客户机及其数据也变得易受攻击。
因此,保护红帽企业 Linux 主机系统是确保安全虚拟化平台的第一步。
2.1. 保护主机物理机器 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
以下任务和提示可帮助您保护红帽企业 Linux 主机的可靠性并确保其性能。
- 确保为安装正确配置了 SELinux,并以 enforcing 模式运行:
setenforce 1
# setenforce 1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 除了是一种良好的安全实践外,sVirt 提供的高级虚拟化安全功能还依赖于 SELinux。有关 SELinux 和 sVirt 的详情,请查看 第 4 章 sVirt。 - 删除或禁用任何不必要的服务,如 AutoFS、NFS、FTP、HTTP、NIS、telnetd 或 sendmail。
- 仅添加服务器上平台管理所需的最少用户帐户数量,并删除不必要的用户帐户。将直接访问系统限制为需要管理系统的用户。考虑禁止共享的 root 访问权限,而是使用 sudo 等工具来根据管理员的管理角色授予管理员特权访问权限。
- 避免在您的主机上运行任何不必要的应用程序。在主机上运行应用可能会影响虚拟机性能,并影响服务器稳定性。任何可能导致服务器崩溃的应用也将导致服务器中的所有虚拟机发生故障。此外,易受攻击的应用程序可能会成为主机上攻击的向量。
- 将中央位置用于虚拟机安装和映像。虚拟机映像应存储在
/var/lib/libvirt/images/
下。如果您的虚拟机镜像使用不同的目录,请确保在 SELinux 策略中添加该目录,并在开始安装前重新标记该目录。强烈建议在中央位置使用可共享的网络存储。 - 仅运行支持使用和管理 guest 系统所需的服务。如果您需要提供其他服务(如文件或打印服务),请考虑在 Red Hat Enterprise Linux 客户机上运行这些服务。
- 确保主机系统上启用了审计,并且 libvirt 已配置为生成审计记录。启用审计后,libvirt 会生成关于客户机配置更改和启动/停止事件的审计记录,这可帮助您跟踪 guest 的状态。此外,也可以使用特殊的
auvirt
实用程序查看 libvirt 审计事件。如需更多信息,请使用 man auvirt 命令。 - 确保系统的任何远程管理都仅通过安全网络通道进行。SSH 等实用工具以及 TLS 或 SSL 等网络协议同时提供身份验证和数据加密,以帮助确保只有经过批准的管理员可以远程管理系统。
- 确保已为您的安装正确配置了防火墙,并在引导时激活了防火墙。应当仅允许使用和管理系统所需的网络端口。
- 不要授予虚拟客户机直接访问整个磁盘或块设备(例如
/dev/sdb
);而是使用分区(如/dev/sdb1
)或 LVM 卷作为 guest 存储。 - 当虚拟机无法使用 SR-IOV 时,附加 USB 设备、物理功能或物理设备可以提供对设备的访问权限,该设备足以覆盖该设备的固件。这会带来一个潜在的安全问题,攻击者可能会因为恶意代码覆盖设备的固件,并在虚拟机或主机引导时移动该设备时出现问题。建议您在适用的情况下使用 SR-IOV 虚拟功能设备分配。
注意