第 7 章 强化仪表板服务


本章论述了使用 OpenStack Dashboard (horizon)部署的 Red Hat OpenStack Platform 部署安全强化注意事项。

控制面板为用户提供一个自助服务门户,用于配置自己的资源(在管理员设定的限制范围内)。例如,您可以使用控制面板定义实例类别、上传虚拟机(VM)镜像、管理虚拟网络、创建安全组、启动实例,并通过管理控制台远程访问实例。

控制面板应当与 OpenStack API 相同的敏感度,因为这两个控制面板都能够授予云资源和配置的访问权限。

7.1. 规划仪表板部署

本节论述了部署 Dashboard (horizon)服务前需要考虑的安全方面。

7.1.1. 选择域名

建议您将仪表板部署到第二个级别域,如 https://example.com,而不是在共享子域(在任何级别)上部署仪表板,如 https://openstack.example.orghttps://horizon.openstack.example.org。还建议您避免将仪表板部署到裸机内部域,如 https://horizon/。这些建议基于浏览器 相同-origin-policy 的限制。

这种方法可帮助您将 Cookie 和安全令牌与其他域隔离开来,其中您可能对内容有完全的控制。在子域上部署时,仪表板的安全等同于在同一第二个级别域中部署的最小安全应用程序。

您可以通过避免由 Cookie 支持的会话存储以及配置 HTTP Strict Transport Security (HSTS) (此指南中涉及)来进一步缓解这一风险。

7.1.2. 配置 ALLOWED_HOSTS

Web 服务可能会受到与虚假 HTTP 主机标头相关的威胁。为帮助缓解这种情况,请考虑将 ALLOWED_HOSTS 设置配置为使用 OpenStack 控制面板提供的 FQDN。

配置之后,如果传入 HTTP 请求的 Host: 标头中的值与此列表中的任何值不匹配,则会引发错误,请求者将无法继续。

Horizon 在 python Django Web 框架基础上构建,需要设置 ALLOWED_HOSTS 来防御可能对 HTTP Host: 标头的恶意操作。将此值设置为 FQDN,控制面板应可从以下位置访问。对于 director,此设置由 HorizonAllowedHosts 管理。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat