TLS & Zertifikate für AWS CloudFront
ACM-Zertifikate mit DNS-Validierung, Security Policy TLSv1.2_2021 und automatische Erneuerung — per Terraform und Console.
TLS & Zertifikate auf AWS CloudFront
TLS-Zertifikate sind die Grundlage für verschlüsselte HTTPS-Verbindungen. AWS Certificate Manager (ACM) stellt kostenlose, automatisch erneuernde Zertifikate bereit — kein manuelles Erneuern nötig. Die CloudFront Security Policy bestimmt, welche TLS-Versionen und Cipher Suites akzeptiert werden. TLS ist mit 4 von 166 Punkten ein Faktor im Wolf-Agents Web Security Check.
Wichtig: ACM-Zertifikate für CloudFront müssen in us-east-1 (N. Virginia) erstellt werden — unabhängig von der Region Ihrer anderen Ressourcen. Die Security Policy TLSv1.2_2021 ist die empfohlene Einstellung und unterstützt ausschließlich TLS 1.2 und 1.3 mit modernen Cipher Suites. OCSP Stapling ist bei CloudFront automatisch aktiviert.
ACM-Zertifikate unterstützen DNS- und E-Mail-Validierung. DNS-Validierung ist die empfohlene Methode: ACM erstellt einen CNAME-Record, den Sie in Route 53 hinterlegen. Das Zertifikat wird automatisch alle 13 Monate erneuert, solange der Validierungsrecord existiert.
ACM-Zertifikat und Security Policy per Terraform
Erstellen Sie ein ACM-Zertifikat mit DNS-Validierung in us-east-1 und weisen Sie es der CloudFront-Distribution zu. Die Security Policy TLSv1.2_2021 unterstützt TLS 1.2 und 1.3 mit modernen Cipher Suites. Der lifecycle-Block stellt sicher, dass bei Erneuerung zuerst das neue Zertifikat erstellt wird, bevor das alte gelöscht wird.
# terraform/tls.tf — ACM + CloudFront TLS
resource "aws_acm_certificate" "main" {
provider = aws.us_east_1
domain_name = "ihre-domain.de"
validation_method = "DNS"
subject_alternative_names = [
"*.ihre-domain.de",
]
lifecycle {
create_before_destroy = true
}
}
# DNS-Validierungsrecord in Route 53
resource "aws_route53_record" "cert_validation" {
for_each = {
for dvo in aws_acm_certificate.main.domain_validation_options : dvo.domain_name => {
name = dvo.resource_record_name
record = dvo.resource_record_value
type = dvo.resource_record_type
}
}
zone_id = aws_route53_zone.main.id
name = each.value.name
type = each.value.type
ttl = 60
records = [each.value.record]
}
# CloudFront mit TLS 1.2+ und HTTPS-Redirect
resource "aws_cloudfront_distribution" "main" {
viewer_certificate {
acm_certificate_arn = aws_acm_certificate.main.arn
ssl_support_method = "sni-only"
minimum_protocol_version = "TLSv1.2_2021"
}
default_cache_behavior {
viewer_protocol_policy = "redirect-to-https"
}
} Konfiguration über die AWS Console
Im CloudFront Dashboard konfigurieren Sie TLS unter General Settings. Wählen Sie das ACM-Zertifikat aus und setzen Sie die Security Policy auf TLSv1.2_2021. Stellen Sie sicher, dass die Viewer Protocol Policy auf HTTPS-Redirect gesetzt ist, damit alle HTTP-Anfragen automatisch auf HTTPS umgeleitet werden.
# AWS Console — TLS-Konfiguration:
# 1. ACM → Request Certificate → DNS Validation
# WICHTIG: Zertifikat muss in us-east-1 erstellt werden!
# 2. Route 53 → CNAME-Record für Validierung anlegen
# (ACM zeigt den benötigten Record an)
# 3. CloudFront → Distribution → General → Edit
# 4. Custom SSL Certificate → ACM Zertifikat auswählen
# 5. Security Policy: TLSv1.2_2021
# (enthält nur TLS 1.2+ Cipher Suites)
# 6. SSL Support Method: SNI Only
# 7. Viewer Protocol Policy: Redirect HTTP to HTTPS
# 8. Save Changes TLSv1 (Standard) erlaubt TLS 1.0 — das ist unsicher und verhindert eine gute Note bei SSL Labs. Setzen Sie immer explizit TLSv1.2_2021 für maximale Sicherheit. Verifizierung
Prüfen Sie die TLS-Version, Cipher Suites und das Zertifikat per curl und openssl. Für eine vollständige Analyse nutzen Sie den SSL Labs Test — mit der Security Policy TLSv1.2_2021 und korrektem HSTS erreichen Sie die Note A+. Der Wolf-Agents Web Security Check analysiert TLS-Details automatisch.
# TLS-Version prüfen
curl -sI -v https://ihre-domain.de 2>&1 | grep "SSL connection"
# Erwartete Ausgabe:
* SSL connection using TLSv1.3 / TLS_AES_128_GCM_SHA256
# Zertifikat-Details prüfen
echo | openssl s_client -connect ihre-domain.de:443 \
-servername ihre-domain.de 2>/dev/null | \
openssl x509 -noout -dates -issuer
# Erwartete Ausgabe:
notBefore=Mar 29 00:00:00 2026 GMT
notAfter=Apr 28 23:59:59 2027 GMT
issuer=CN = Amazon RSA 2048 M03, O = Amazon, C = US
# HTTP-Redirect prüfen
curl -sI http://ihre-domain.de | head -3
# SSL Labs Test (Note A+ erreichbar)
# https://www.ssllabs.com/ssltest/analyze.html?d=ihre-domain.de Häufige Fehler
ACM-Zertifikat nicht in us-east-1
CloudFront akzeptiert nur Zertifikate aus der Region us-east-1. Ein Zertifikat in eu-central-1 wird im CloudFront-Dropdown nicht angezeigt. Nutzen Sie einen Provider-Alias in Terraform.
Security Policy TLSv1 statt TLSv1.2_2021
Die Standard-Security-Policy erlaubt TLS 1.0 und veraltete Cipher Suites. Setzen Sie explizit TLSv1.2_2021 — diese unterstützt nur sichere TLS 1.2+ Cipher Suites und erreicht Note A+ bei SSL Labs.
DNS-Validierung nicht abgeschlossen
ACM-Zertifikate mit DNS-Validierung erfordern einen CNAME-Record. Ohne diesen bleibt das Zertifikat im Status "Pending validation". Bei Route 53 erstellt Terraform den Record automatisch — bei externen DNS-Anbietern manuell.
Zertifikat-Erneuerung scheitert
ACM erneuert Zertifikate automatisch, wenn der DNS-Validierungsrecord existiert. Löschen Sie den CNAME-Record nicht — sonst scheitert die Erneuerung und das Zertifikat läuft ab.
Compliance-Relevanz
PCI DSS fordert TLS 1.2 oder höher für alle Verbindungen, die Kreditkartendaten übertragen — TLS 1.0 und 1.1 sind explizit verboten. BSI IT-Grundschutz (APP.3.1.A12) empfiehlt ausschließlich TLS 1.2 und 1.3 mit Perfect Forward Secrecy. NIS2 fordert Verschlüsselung für Daten in Transit — TLS ist die Standardumsetzung. DSGVO (Art. 32) verlangt angemessene technische Maßnahmen zum Schutz personenbezogener Daten — TLS-Verschlüsselung ist die Grundvoraussetzung. Der Wolf-Agents Web Security Check prüft TLS-Version, Cipher Suites und Zertifikat-Gültigkeit.
Wie steht Ihre Domain bei TLS?
Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 166 Prüfpunkte.