跳至主要内容

机密加密配置

K3s 支持在静止状态下启用机密加密。第一次启动服务器时,传递标志 --secrets-encryption 将自动执行以下操作

  • 生成 AES-CBC 密钥
  • 使用生成的密钥生成加密配置文​​件
  • 将配置传递给 KubeAPI 作为 encryption-provider-config
提示

无法在不重新启动服务器的情况下在现有服务器上启用机密加密。
如果从脚本安装,请使用 curl -sfL https://get.k3s.io | sh -s - server --secrets-encryption,或使用 配置选项 中描述的其他方法。

加密配置文件示例

{
"kind": "EncryptionConfiguration",
"apiVersion": "apiserver.config.k8s.io/v1",
"resources": [
{
"resources": [
"secrets"
],
"providers": [
{
"aescbc": {
"keys": [
{
"name": "aescbckey",
"secret": "xxxxxxxxxxxxxxxxxxx"
}
]
}
},
{
"identity": {}
}
]
}
]
}

机密加密工具

K3s 包含一个实用工具 secrets-encrypt,它可以自动控制以下操作

  • 禁用/启用机密加密
  • 添加新的加密密钥
  • 轮换和删除加密密钥
  • 重新加密机密

有关更多信息,请参阅 k3s secrets-encrypt 命令文档