Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

20.5. 使用 Secure Root 用户访问权限

overcloud 镜像自动包含 root 用户的强化安全性。例如,每个部署的 overcloud 节点都会自动禁用对 root 用户的直接 SSH 访问。您仍然可以通过以下方法访问 overcloud 节点上的 root 用户:

  1. 登录 undercloud 节点的 stack 用户。
  2. 每个 overcloud 节点都有一个 heat-admin 用户帐户。此用户帐户包含 undercloud 的公共 SSH 密钥,它在没有从 undercloud 到 overcloud 节点的密码的情况下提供 SSH 访问。在 undercloud 节点上,使用 heat-admin 用户通过 SSH 登录选定的 overcloud 节点。
  3. 使用 sudo -i 切换到 root 用户。

减少根用户安全性

有些情况可能需要直接 SSH 访问 root 用户。在这种情况下,您可以减少每个 overcloud 节点的 root 用户的 SSH 限制。

警告

此方法仅用于调试目的。不建议在生产环境中使用。

该方法使用第一个引导配置 hook (请参阅 第 4.1 节 “首次启动:自定义第一个引导配置”)。将以下内容放在环境文件中:

resource_registry:
  OS::TripleO::NodeUserData: /usr/share/openstack-tripleo-heat-templates/firstboot/userdata_root_password.yaml

parameter_defaults:
  NodeRootPassword: "p@55w0rd!"

注意以下几点:

  • OS::TripleO::NodeUserData 资源引用在首次引导 cloud-init 阶段期间配置 root 用户的模板。
  • NodeRootPassword 参数设置 root 用户的密码。将此参数的值更改为您所需的密码。请注意,环境文件以纯文本字符串形式包含密码,这被视为安全风险。

在创建 overcloud 时,请使用 openstack overcloud deploy 命令包含此环境文件。