Cloudflare R2
So stellen Sie SSL-Zertifikate automatisch in einem Cloudflare-R2-Bucket bereit.
Übersicht
AutoSSL kann SSL-Zertifikatsdateien automatisch in einen Cloudflare-R2-Bucket hochladen. 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 R2 beziehen.
Cloudflare R2 ist S3-kompatibel und berechnet keine Gebühren für ausgehenden Traffic. Damit eignet es sich als günstige Alternative zum Speichern und Verteilen von Zertifikaten.
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:
| Parameter | Beschreibung | Beispiel |
|---|---|---|
| Konto-ID | Ihre Cloudflare-Konto-ID. Sie steht in der URL des Cloudflare-Dashboards oder auf der Übersichtsseite von Workers & Pages. | a1b2c3d4e5f6... |
| Bucket-Name | Name des R2-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/ |
Funktionsweise
Wenn AutoSSL ein Zertifikat in einen Cloudflare-R2-Bucket bereitstellt, zum Beispiel my-ssl-certs mit dem Präfix certs/example.com/, führt es diese Schritte aus:
-
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) undfullchain.pem(vollständige Kette). - Erstellt eine Datei
README.mdmit Metadaten des Zertifikats und einem Link zu https://autossl.dev zur Nachverfolgung. - Liest das Datum
notBeforeund den SHA1-Fingerabdruck und bildet daraus den Archivordner (Format:YYYY-MM-DD_<first 8 chars of SHA1>).
- Teilt die vollständige Zertifikatskette in einzelne PEM-Dateien auf:
-
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(sowieprivkey.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(sowieprivkey.pem,chain.pem,fullchain.pem,README.md). Dieser Pfad enthält immer das zuletzt hochgeladene Zertifikat.
- Archivpfad —
- Lädt die Zertifikatsdateien (vier PEM-Dateien und README.md) an zwei Pfade im Bucket hoch:
Über den Pfad latest/ können nachgelagerte Dienste das aktuelle Zertifikat
immer unter einem festen R2-Schlü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.mdFormat 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.pemAnforderungen an Zugriffsschlüssel
Für die Cloudflare-R2-API benötigt dieser Anbieter einen Cloudflare-R2-Zugriffsschlüssel.
Erforderliche Berechtigungen
Das R2-API-Token braucht für den Ziel-Bucket die Berechtigung Object Read & Write.
So erstellen Sie ein R2-API-Token mit den passenden Berechtigungen:
- Öffnen Sie das Cloudflare Dashboard → R2 Object Storage → Manage R2 API Tokens.
- Klicken Sie auf Create API token.
- Setzen Sie Permissions auf Object Read & Write.
- (Optional) Beschränken Sie das Token auf einen bestimmten Bucket, indem Sie unter Specify bucket(s) den Namen des Ziel-Buckets eintragen.
- Klicken Sie auf Create API Token und kopieren Sie Access Key ID und Secret Access Key.
Weitere Informationen finden Sie in der Dokumentation zu Cloudflare-R2-API-Token.