obdiag配置文件密码明文的问题

【 使用环境 】 生产环境
【 OB or 其他组件 】obdiag
【 使用版本 】2.5
【问题描述】使用obdiag config命令后,会在用户目录生成一个config文件,该文件中记录了root@sys的密码,是明文存储的。存在权限泄露的风险。希望能优化该问题,在配置文件中加密或者使用星号的形式存储。
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):

【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)

【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手] 即可召唤小助手,欢迎试用!

根据文档库中的信息,目前关于 obdiag 工具的配置文件中密码明文存储的问题,没有直接提到解决方案或优化措施。但是,您可以采取一些额外的安全措施来减少风险:

  1. 限制文件权限:确保配置文件的权限被严格控制,只有必要的用户才能访问。可以通过以下命令设置文件权限:

    chmod 600 ~/.obdiag/config
    
  2. 使用环境变量:避免在配置文件中直接写入密码,可以使用环境变量来传递敏感信息。例如,在执行 obdiag 命令前,设置环境变量:

    export OB_ROOT_PASSWORD="your_password"
    

    然后在 obdiag 配置文件中引用这个环境变量。

  3. 定期更新密码:定期更改 root@sys 的密码,减少因密码泄露带来的风险。

  4. 使用密钥管理工具:可以考虑使用密钥管理工具(如 HashiCorp Vault)来管理和传递敏感信息,而不是直接在配置文件中存储明文密码。

如果您希望官方能够优化这一问题,建议提交一个功能请求或反馈给 OceanBase 社区,以便他们能够考虑在未来版本中改进这一点。

希望这些建议能帮助您降低安全风险。 [6]

更多信息请查看:

  1. 常见问题汇总
  2. ODP 传输加密
  3. 使用 OCP 接管 obd 部署的集群
  4. ODP 配置管理
  5. 通过图形化界面部署 OCP
  6. 接管非 OBShell 部署集群
  7. 错误码

收到需求,已记录issue :[Feature]: config 明文密码问题 · Issue #501 · oceanbase/obdiag · GitHub ,我们会在这周五obdiag SIG 周会的时候讨论一下这个需求,会议完全公开对外,感兴趣的话参加周会,https://oceanbase.yuque.com/org-wiki-obtech-vh7w9r/imzr6c/llkhydgh8dsay0en