AutoSSL
Zertifikat bereitstellen

S3-kompatibler Speicher

So stellen Sie SSL-Zertifikate automatisch in einem beliebigen S3-kompatiblen Objektspeicher bereit.

Übersicht

AutoSSL kann SSL-Zertifikatsdateien automatisch in einen beliebigen S3-kompatiblen Objektspeicher hochladen. Sie geben einen eigenen HTTPS-Endpunkt und den Bucket-Namen an. Der Anbieter eignet sich für MinIO, Wasabi, Ceph und andere S3-kompatible Dienste, für die es keinen eigenen Anbieter gibt.

Jedes Zertifikat wird unter einem versionierten Archivpfad abgelegt und zusätzlich unter einem Pfad latest/ aktualisiert. Nachgelagerte Systeme, zum Beispiel Nginx, Caddy oder eigene Skripte, können das aktuelle Zertifikat so leicht aus dem Objektspeicher beziehen.

Wie Sie diese Bereitstellung verwalten und ausführen, steht im Abschnitt Bereitstellungen verwalten.

Konfigurationsparameter

Wenn Sie dieses Bereitstellungsziel in der AutoSSL-Konsole hinzufügen oder bearbeiten, konfigurieren Sie die folgenden Parameter:

ParameterBeschreibungBeispiel
EndpunktHTTPS-URL der S3-kompatiblen API. HTTP-Endpunkte werden nicht unterstützt.https://minio.example.com
Region(Optional) Region für die Signatur der Anfrage. Standard ist us-east-1. Verwenden Sie den Wert, den Ihr Anbieter verlangt.us-east-1
Bucket-NameName des Buckets, in den die Zertifikatsdateien hochgeladen werden.my-ssl-certs
Objektpräfix(Optional) Präfix zur Ablage der Zertifikatsdateien im Bucket. Wenn es gesetzt ist, werden die Dateien unter diesem Präfix hochgeladen. Ein abschließender Schrägstrich ist optional.certs/example.com/
Pfadstil erzwingen(Optional) Aktiviert Pfad-URLs (https://endpoint/bucket/key). Aktivieren Sie dies für MinIO und einige selbst gehostete S3-kompatible Dienste.true (für MinIO)

Der Endpunkt muss HTTPS verwenden. AutoSSL lehnt HTTP-Endpunkte aus Sicherheitsgründen ab.

Funktionsweise

Wenn AutoSSL ein Zertifikat in einen S3-kompatiblen Bucket bereitstellt, zum Beispiel my-ssl-certs mit dem Präfix certs/example.com/, führt es diese Schritte aus:

  1. Zertifikat vorbereiten:

    • Teilt die vollständige Zertifikatskette in einzelne PEM-Dateien auf: cert.pem (Leaf-Zertifikat), privkey.pem (privater Schlüssel, PKCS#8), chain.pem (Zwischenzertifikate) und fullchain.pem (vollständige Kette).
    • Erstellt eine Datei README.md mit Metadaten des Zertifikats und einem Link zu https://autossl.dev zur Nachverfolgung.
    • Liest das Datum notBefore und den SHA1-Fingerabdruck und bildet daraus den Archivordner (Format: YYYY-MM-DD_<first 8 chars of SHA1>).
  2. Dateien hochladen:

    • Lädt die Zertifikatsdateien (vier PEM-Dateien und README.md) an zwei Pfade im Bucket hoch:
      • Archivpfad — certs/example.com/2026-05-30_e5f6a7b8/cert.pem (sowie privkey.pem, chain.pem, fullchain.pem, README.md). Dieser Pfad ist für jede Ausstellung eindeutig und wird nie überschrieben.
      • Pfad latest — certs/example.com/latest/cert.pem (sowie privkey.pem, chain.pem, fullchain.pem, README.md). Dieser Pfad enthält immer das zuletzt hochgeladene Zertifikat.

Über den Pfad latest/ können nachgelagerte Dienste das aktuelle Zertifikat immer unter einem festen Objektschlüssel abrufen. Ältere Zertifikate bleiben in ihren versionierten Archivordnern verfügbar.

Beispiel für die Bucket-Struktur

Nach mehreren Verlängerungen sieht die Struktur des Buckets so aus:

certs/example.com/
├── 2026-03-01_a1b2c3d4/
│   ├── cert.pem
│   ├── privkey.pem
│   ├── chain.pem
│   ├── fullchain.pem
│   └── README.md
├── 2026-05-30_e5f6a7b8/
│   ├── cert.pem
│   ├── privkey.pem
│   ├── chain.pem
│   ├── fullchain.pem
│   └── README.md
└── latest/
    ├── cert.pem
    ├── privkey.pem
    ├── chain.pem
    ├── fullchain.pem
    └── README.md

Format des privaten Schlüssels

privkey.pem liegt im Format PKCS#8 vor (-----BEGIN PRIVATE KEY-----). Moderne Webserver und Werkzeuge unterstützen dieses Format, darunter Nginx, Caddy, Traefik und OpenSSL 1.1+.

Wenn Ihre Umgebung PKCS#1 benötigt, zum Beispiel -----BEGIN RSA PRIVATE KEY----- für RSA-Schlüssel, konvertieren Sie die Datei vor der Verwendung lokal:

openssl rsa -in privkey.pem -out privkey-pkcs1.pem

Anforderungen an Zugriffsschlüssel

Erforderliche Berechtigungen

Der Zugriffsschlüssel muss Objekte in den Ziel-Bucket hochladen dürfen. Mindestens diese S3-Aktion ist erforderlich:

  • s3:PutObject für den Ziel-Bucket (oder das Bucket-Präfix)

Gewähren Sie dem Benutzer bei MinIO eine Richtlinie, die s3:PutObject für den Ziel-Bucket erlaubt.

Fehlerbehebung

SymptomMögliche Abhilfe
Verbindung abgelehnt oder DNS-FehlerPrüfen Sie, ob die Endpunkt-URL korrekt ist und AutoSSL sie erreichen kann.
Zugriff verweigertPrüfen Sie, ob der Zugriffsschlüssel die Berechtigung PutObject für den Bucket hat.
Signatur stimmt nicht übereinVersuchen Sie einen anderen Wert für Region, wie ihn Ihr Anbieter verlangt.
Bucket mit eigenem Endpunkt nicht gefundenAktivieren Sie Pfadstil erzwingen (üblich bei MinIO).
S3-kompatibler Speicher | AutoSSL