搜索

2.9. 更改节点访问的核心用户密码

download PDF

默认情况下,Red Hat Enterprise Linux CoreOS (RHCOS) 在集群的节点上创建一个名为 core 的用户。您可以使用 core 用户通过云供应商串口控制台或裸机基板管理控制器管理器 (BMC) 访问节点。例如,如果节点停机且您无法使用 SSH 或 oc debug node 命令访问该节点,这非常有用。但是,默认情况下,此用户没有密码,因此您无法在不创建密码的情况下登录。

您可以使用机器配置为 core 用户创建密码。Machine Config Operator (MCO) 分配密码并将密码注入 /etc/shadow 文件中,允许您使用 core 用户登录。MCO 不会检查密码哈希。因此,如果密码出现问题,MCO 无法报告。

注意
  • 密码只能通过云供应商串口控制台或 BMC 正常工作。它不适用于 SSH。
  • 如果您有包含 /etc/shadow 文件或 systemd 单元的机器配置,则优先于密码哈希。

您可以通过编辑用于创建密码的机器配置来更改密码。另外,您可以通过删除机器配置来删除密码。删除机器配置不会删除用户帐户。

流程

  1. 使用您的操作系统支持的工具,创建一个哈希密码。例如,通过运行以下命令,使用 mkpasswd 创建哈希密码:

    $ mkpasswd -m SHA-512 testpass

    输出示例

    $ $6$CBZwA6s6AVFOtiZe$aUKDWpthhJEyR3nnhM02NM1sKCpHn9XN.NPrJNQ3HYewioaorpwL3mKGLxvW0AOb4pJxqoqP4nFX77y0p00.8.

  2. 创建包含 core 用户名和散列密码的机器配置文件:

    apiVersion: machineconfiguration.openshift.io/v1
    kind: MachineConfig
    metadata:
      labels:
        machineconfiguration.openshift.io/role: worker
      name: set-core-user-password
    spec:
      config:
        ignition:
          version: 3.2.0
        passwd:
          users:
          - name: core 1
            passwordHash: <password> 2
    1
    这必须是 core
    2
    core 帐户一起使用的散列密码。
  3. 运行以下命令来创建机器配置:

    $ oc create -f <file-name>.yaml

    节点不会重启,并在几分钟内可用。您可以使用 oc get mcp 来监控要更新的机器配置池,如下例所示:

    NAME     CONFIG                                             UPDATED   UPDATING   DEGRADED   MACHINECOUNT   READYMACHINECOUNT   UPDATEDMACHINECOUNT   DEGRADEDMACHINECOUNT   AGE
    master   rendered-master-d686a3ffc8fdec47280afec446fce8dd   True      False      False      3              3                   3                     0                      64m
    worker   rendered-worker-4605605a5b1f9de1d061e9d350f251e5   False     True       False      3              0                   0                     0                      64m

验证

  1. 节点返回 UPDATED=True 状态后,运行以下命令为节点启动 debug 会话:

    $ oc debug node/<node_name>
  2. 运行以下命令,将 /host 设置为 debug shell 中的根目录:

    sh-4.4# chroot /host
  3. 检查 /etc/shadow 文件的内容:

    输出示例

    ...
    core:$6$2sE/010goDuRSxxv$o18K52wor.wIwZp:19418:0:99999:7:::
    ...

    哈希密码分配给 core 用户。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.