更新:Linux 软件包签名密钥轮换

导航到

更新 2023-01-26:截至 2023 年 1 月 26 日,InfluxData 的 Linux 打包签名密钥已轮换。用户应更新其配置以使用新密钥。

原始 2023-01-24:1 月 4 日,CircleCI 发布了一份 安全警报,建议所有 CircleCI 用户轮换其密钥。InfluxData 是 CircleCI 的客户,因此,出于谨慎考虑,我们主动轮换了存储在 CircleCI 中的所有密钥。

InfluxData 使用 CircleCI 为各种产品提供支持,在泄露期间,Linux 打包签名密钥的指纹为 05CE 1508 5FC0 9D18 E99E FB22 684A 14CF 2582 E0C5 存储在 CircleCI 中。InfluxData 将轮换此签名密钥,因此,Linux DEB 和 RPM 用户必须配置其系统以使用新密钥。

官方InfluxData存储库尚未遭到破坏,InfluxData已验证,通过官方存储库检索并由该密钥签名的软件未经修改。此外,尽管假设的攻击者可以使用此密钥签署看起来来自InfluxData的二进制文件,但攻击者无法访问官方存储库以将其交付给您的主机。

我们将分两个阶段轮换密钥签名密钥

  1. 2023年1月26日,我们将开始使用新的Linux软件包签名密钥,指纹为
    9D53 9D90 D332 8DC7 D6C8 D3B9 D8FF 8E1F 7DF8 B07E
  2. 2023年4月27日,我们将吊销旧Linux软件包签名密钥,指纹为
    05CE 1508 5FC0 9D18 E99E FB22 684A 14CF 2582 E0C5

一旦新密钥推广到官方InfluxData存储库,基于DEB和RPM的Linux系统将无法下载和/或验证来自InfluxData存储库的软件,直到进行以下配置更改。InfluxData将提供更新,指出何时安装新密钥。

配置Linux主机以使用新签名密钥

新密钥的指纹为 9D53 9D90 D332 8DC7 D6C8 D3B9 D8FF 8E1F 7DF8 B07E

基于DEB的系统

  1. 获取并验证新密钥
    $ wget -q https://repos.influxdata.com/influxdata-archive_compat.key
    $ gpg --with-fingerprint --show-keys ./influxdata-archive_compat.key
    pub   rsa4096 2023-01-18 [SC] [expires: 2026-01-17]
      	9D53 9D90 D332 8DC7 D6C8  D3B9 D8FF 8E1F 7DF8 B07E
    uid                  	InfluxData Package Signing Key <[email protected]>
  2. 安装新密钥
    $ cat influxdata-archive_compat.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null
  3. 更新您的APT源以使用新密钥
    $ echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list
  4. 清理旧密钥
    $ sudo rm -f /etc/apt/trusted.gpg.d/influxdb.gpg
  5. 确认 sudo apt-get update 对于 https://repos.influxdata.com 没有错误返回

上述指定了最最近文档中的文件和配置路径。使用与 /etc/apt/sources.list.d/influxdata.list 不同的文件的用户需要更新该文件以使用 signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg。同样,将旧密钥安装在不同位置(如 /etc/apt/trusted.gpg.d/influxdb.gpg)的用户需要使用该位置来删除旧密钥。

基于RPM的系统

  1. 更新您的YUM存储库配置以使用新密钥
    $ cat <<EOF | sudo tee /etc/yum.repos.d/influxdata.repo
    [influxdata]
    name = InfluxData Repository - Stable
    baseurl = https://repos.influxdata.com/stable/\$basearch/main
    enabled = 1
    gpgcheck = 1
    gpgkey = https://repos.influxdata.com/influxdata-archive_compat.key
    EOF
  2. 下一次从存储库拉取的YUM操作将更新密钥
    $ sudo yum update && sudo yum install telegraf
    Importing GPG key 0x7DF8B07E:
     Userid     : "InfluxData Package Signing Key <[email protected]>"
     Fingerprint: 9D53 9D90 D332 8DC7 D6C8 D3B9 D8FF 8E1F 7DF8 B07E
     From       : https://repos.influxdata.com/influxdata-archive_compat.key
    Is this ok [y/N]: y
  3. 清理旧密钥
    $ sudo rpm --erase gpg-pubkey-2582e0c5-56099b04

上述指定了来自最最近文档的配置路径。使用与 /etc/yum.repos.d/influxdata.repo 不同的文件的用户需要更新该文件以使用 gpgkey = https://repos.influxdata.com/influxdata-archive_compat.key

常见问题解答

客户数据是否遭到破坏?

经过仔细调查,我们没有发现InfluxData客户数据因CircleCI事件而遭到破坏的证据。

InfluxData源代码或二进制文件是否被修改?

经过仔细调查,我们没有发现InfluxData源代码或二进制文件被未经授权修改的证据。

influxdata-archive.key和influxdata-archive_compat.key之间有什么区别?

influxdata-archive.key签名密钥采用现代主/次密钥方法,该方法将被纳入未来的Linux打包更新。 influxdata-archive_compat.key可以验证使用influxdata-archive.key签名的软件包,并且与APT和RPM兼容性最广。请现在使用influxdata-archive_compat.key