AutoSSL
Zertifikat bereitstellen

Azure Blob Storage

So stellen Sie SSL-Zertifikate automatisch in einem Azure-Blob-Storage-Container bereit.

Übersicht

AutoSSL kann SSL-Zertifikatsdateien automatisch in einen Azure-Blob-Storage-Container 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 Blob Storage 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
Name des SpeicherkontosName des Azure-Speicherkontos, in dem der Blob-Container liegt.mystorageaccount
ContainernameName des Blob-Containers, in den die Zertifikatsdateien hochgeladen werden.ssl-certs
Blob-Namenspräfix(Optional) Präfix zur Ablage der Zertifikatsdateien im Container. 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 Blob-Container bereitstellt, zum Beispiel Speicherkonto mystorageaccount, Container ssl-certs, 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 Container 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 Blob-Namen abrufen. Ältere Zertifikate bleiben in ihren versionierten Archivordnern verfügbar.

Beispiel für die Containerstruktur

Nach mehreren Verlängerungen sieht die Struktur des Containers 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

Für Azure Blob Storage benötigt dieser Anbieter einen Azure-Dienstprinzipal.

Erforderliche Berechtigungen

Der Dienstprinzipal muss Blobs im Zielcontainer anlegen und überschreiben dürfen. Weisen Sie auf der Ebene des Speicherkontos oder des Containers diese RBAC-Rolle der Datenebene zu:

  • Storage Blob Data Contributor (empfohlen)

Rollen der Steuerungsebene wie Storage Account Contributor erlauben das Hochladen von Blobs nicht. Schlägt die Bereitstellung mit This request is not authorized to perform this operation fehl, prüfen Sie die RBAC-Rollenzuweisung und die Firewall-Einstellungen des Speicherkontos weiter unten.

RBAC-Rolle zuweisen

Wenn Sie die Rolle auf den Container beschränken, folgen Sie dem Prinzip der geringsten Berechtigung:

  1. Öffnen Sie im Azure-Portal Ihr Storage Account → Containers und wählen Sie den Zielcontainer.
  2. Gehen Sie zu Access control (IAM) → Add role assignment.
  3. Wählen Sie auf der Registerkarte Role die Rolle Storage Blob Data Contributor.
  4. Auf der Registerkarte Members:
    • Setzen Sie Assign access to auf User, group, or service principal.
    • Klicken Sie auf Select members.
    • Suchen Sie nach dem Anzeigenamen Ihrer App-Registrierung (zum Beispiel AutoSSL) oder der Client-ID.
    • Wählen Sie das Ergebnis vom Typ Application oder Service principal, nicht ein Benutzerkonto.
  5. Prüfen Sie die Angaben und weisen Sie die Rolle zu.

Erscheint die App nicht in der Suche, öffnen Sie Microsoft Entra ID → Enterprise applications, setzen Sie Application type auf All applications und prüfen Sie, ob der Dienstprinzipal vorhanden ist. Neu angelegte Prinzipale können einige Minuten brauchen, bis sie in der IAM-Suche erscheinen.

Weitere Informationen finden Sie in der Dokumentation zur Zugriffssteuerung von Azure Blob Storage.

Firewall des Speicherkontos konfigurieren

AutoSSL verbindet sich über das öffentliche Internet mit Blob Storage. Schränkt das Speicherkonto den Netzwerkzugriff ein, werden Anfragen blockiert, auch wenn RBAC korrekt konfiguriert ist.

  1. Öffnen Sie Ihr Storage Account → Networking → Firewalls and virtual networks.
  2. Wählen Sie eine der folgenden Möglichkeiten:
    • Enabled from all networks — am einfachsten für die erste Einrichtung und Tests.
    • Enabled from selected networks — tragen Sie die ausgehenden IP-Adressen von AutoSSL unter Address range ein.
  3. Speichern Sie die Änderungen und starten Sie die Bereitstellung erneut.

Ist Ihr Speicherkonto nur über ein virtuelles Netzwerk oder einen privaten Endpunkt erreichbar, kann AutoSSL es aus dem öffentlichen Internet nicht erreichen, sofern Sie den Datenverkehr nicht über einen passenden Netzwerkpfad führen.

Azure Blob Storage | AutoSSL