Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Secrets-Verschlüsselungskonfiguration

K3s unterstützt die Aktivierung der Geheimnisverschlüsselung im Ruhezustand. Beim ersten Start des Servers wird das Übergeben des Flags --secrets-encryption automatisch Folgendes tun:

  • Einen AES-CBC-Schlüssel generieren

  • Erzeugen Sie eine Konfigurationsdatei für die Verschlüsselung mit dem generierten Schlüssel.

  • Die Konfiguration als encryption-provider-config an die KubeAPI übergeben

Die Geheimnisverschlüsselung kann auf einem bestehenden Server nicht aktiviert werden, ohne ihn neu zu starten.
Verwenden Sie curl -sfL https://get.k3s.io | INSTALL_K3S_ARTIFACT_URL=<PRIME-ARTIFACTS-URL>/k3s sh -s - server --secrets-encryption, wenn Sie aus einem Skript installieren, oder andere in Konfigurationsoptionen beschriebene Methoden.

Wahl des Verschlüsselungsanbieters

Versionssperre

Verfügbar ab den April 2025-Versionen: v1.30.12+k3s1, v1.31.8+k3s1, v1.32.4+k3s1, v1.33.0+k3s1.

Mit dem --secrets-encryption-provider Flag können Sie aus den folgenden von K3s unterstützten Verschlüsselungsanbietern wählen:

  • aescbc: AES-CBC mit PKCS#7-Padding. Dies ist der standardmäßige Anbieter.

  • secretbox: XSalsa20 und Poly1305

Anbieter migrieren

Sie können vom aescbc Anbieter zum secretbox Anbieter migrieren, indem Sie die folgenden Schritte befolgen:

  1. Stellen Sie sicher, dass der secretbox Anbieter von Ihrer K3s-Version unterstützt wird.

  2. Aktualisieren oder fügen Sie das secrets-encryption-provider-Flag in Ihrer K3s-Konfigurationsdatei auf secretbox hinzu.

  3. Drehen Sie die Verschlüsselungsschlüssel gemäß dem Abschnitt Verschlüsselungsschlüsselrotation unten.

Generierte Konfigurationsdatei für Verschlüsselung

Wenn Sie den Server mit --secrets-encryption starten, erstellt K3s eine Verschlüsselungskonfigurationsdatei unter /var/lib/rancher/k3s/server/cred/encryption-config.json.

Nachfolgend finden Sie ein Beispiel für die generierte Verschlüsselungskonfigurationsdatei mit dem Standardanbieter aescbc:

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

Verschlüsselungstool für Geheimnisse

K3s enthält ein Dienstprogramm secrets-encrypt, das die automatische Steuerung über Folgendes ermöglicht:

  • Deaktivieren/Aktivieren der Geheimnisverschlüsselung

  • Hinzufügen neuer Verschlüsselungsschlüssel

  • Drehen und Löschen von Verschlüsselungsschlüsseln

  • Geheimnisse erneut verschlüsseln

Weitere Informationen finden Sie in der `k3s secrets-encrypt`Befehlsdokumentation.