TypistTech.trellis-cloudflare-origin-ca
Trellis Cloudflare Origin CA
Fügen Sie Cloudflare Origin CA zu Trellis als SSL-Anbieter hinzu.
Entwickelt mit ♥ von Typist Tech
Trellis Cloudflare Origin CA ist ein Open-Source-Projekt und komplett kostenlos zu nutzen.
Allerdings ist der Aufwand zur Wartung und zur Entwicklung neuer Funktionen ohne entsprechende finanzielle Mittel nicht nachhaltig. Wenn Sie die Möglichkeit haben, ziehen Sie bitte in Erwägung, über die folgenden Links zu spenden:
Fügen Sie Cloudflare Origin CA zu Trellis als SSL-Anbieter hinzu.
Warum?
Kurze Antwort: Um die Verbindung zwischen Cloudflare und Ihren Servern privat und vor Manipulation zu schützen.
Lange Antwort:
Der flexible SSL-Modus von Cloudflare ist die Standardeinstellung für Cloudflare-Websites im kostenlosen Plan. Der flexible SSL-Modus bedeutet, dass der Verkehr von Browsern zu Cloudflare verschlüsselt wird, der Verkehr von Cloudflare zum Ursprungsserver einer Site jedoch nicht. Um die Vorteile unseres kompletten und strengen SSL-Modus zu nutzen, der die Verbindung zwischen Cloudflare und dem Ursprungsserver verschlüsselt, ist es notwendig, ein Zertifikat auf dem Ursprungsserver zu installieren.
Cloudflare Blog - Sicherheit der Ursprungsserververbindung mit Universal SSL
Was sind die Vorteile von Cloudflare Origin CA gegenüber Let's Encrypt?
Um Zertifikate von Let's Encrypt zu erhalten, müssen Sie zuerst Cloudflare deaktivieren, da Cloudflare die tatsächlichen Server-IP-Adressen verbirgt und die Herausforderungen von Let's Encrypt fehlschlagen. Die Verwendung von Cloudflare Origin CA vereinfacht diese Probleme.
Was sind die Vorteile von Cloudflare Origin CA gegenüber anderen öffentlichen Zertifikaten?
Siehe Einführung in Cloudflare Origin CA im Cloudflare-Blog.
Rollenvariablen
# group_vars/<environment>/vault.yml
# Diese Datei sollte verschlüsselt sein. Siehe: https://roots.io/trellis/docs/vault/
##########################################################################
# Cloudflare Origin CA Schlüssel
# Nicht zu verwechseln mit Cloudflare Global API Schlüssel
# Siehe: https://blog.cloudflare.com/cloudflare-ca-encryption-origin/#iiobtainyourcertificateapitoken
vault_cloudflare_origin_ca_key: v1.0-xxxxxxxxxxx
# group_vars/<environment>/main.yml
###################################
# Gibt den gewünschten Paketstatus an.
# `latest` stellt sicher, dass die neueste Version installiert wird.
# `present` aktualisiert nicht, wenn bereits installiert.
# Optionen: present|latest
# Standard: latest
cfca_package_state: present
# Ob die Ergebnisse sensibler Aufgaben, die
# möglicherweise den Cloudflare Origin CA Schlüssel im Klartext enthalten, verborgen werden sollen.
# Optionen: true|false
# Standard: false
cloudflare_origin_ca_no_log: true
# group_vars/<environment>/wordpress_sites.yml
##############################################
wordpress_sites:
example.com:
# Ihr Cloudflare-Konto muss alle diese Domains besitzen
site_hosts:
- canonical: example.com
redirects:
- hi.example.com
- hello.another-example.com
ssl:
# SSL muss aktiviert sein
enabled: true
# OCSP-Stapeln muss deaktiviert sein
stapling_enabled: false
# Verwenden Sie diese Rolle, um ein Cloudflare Origin CA-Zertifikat zu generieren
provider: cloudflare-origin-ca
# Die folgenden sind optional
cloudflare_origin_ca:
# Anzahl der Tage, für die das ausgestellte Zertifikat gültig ist. Akzeptable Optionen sind: 7, 30, 90, 365 (1 Jahr), 730 (2 Jahre), 1095 (3 Jahre), 5475 (15 Jahre).
# Standard: 5475
days: 7
# Liste der vollständig qualifizierten Domainnamen, die als Subject Alternative Names im Zertifikat enthalten sein sollen.
# Standard: Alle kanonischen und weiterleitenden Domains
# Im obigen Beispiel: example.com, hi.example.com, hello.another-example.com
hostnames:
- example.com
- '*.example.com'
- '*.another-example.com'
Typist Tech ist bereit, Ihre nächste großartige WordPress-Seite zu erstellen. Beauftragen Sie uns!
Anforderungen
- Ansible 2.10 oder später
- Trellis@c86d8a0 oder später
- Cloudflare Konto
- Ubuntu 18.04 (Bionic) oder 20.04 (Focal)
Installation
Fügen Sie diese Rolle zu galaxy.yml
hinzu:
- src: TypistTech.trellis-cloudflare-origin-ca # Groß- und Kleinschreibung beachten!
version: 0.8.0 # Überprüfen Sie die neueste Version!
Führen Sie $ trellis galaxy install
aus.
Anpassen des Trellis-Playbooks
Fügen Sie diese Rolle zu server.yml
sofort nach role: wordpress-setup
hinzu:
roles:
# ...
- - { role: wordpress-setup, tags: [wordpress, wordpress-setup, letsencrypt] }
+ - { role: wordpress-setup, tags: [wordpress, wordpress-setup, letsencrypt, cloudflare-origin-ca] }
+ - { role: TypistTech.trellis-cloudflare-origin-ca, tags: [cloudflare-origin-ca, wordpress-setup], when: sites_using_cloudflare_origin_ca | count }
# ...
Hinweis: role: wordpress-setup
ist mit cloudflare-origin-ca
gekennzeichnet.
Nginx Includes
Diese Rolle erstellt Nginx-SSL-Direktiven in {{ nginx_path }}/includes.d/{{ item.key }}/cloudflare-origin-ca.conf
. Trellis inkludiert diese Datei standardmäßig hier und hier, es sind keine weiteren Maßnahmen erforderlich.
Wenn Sie Nginx-Kindvorlagen verwenden, fügen Sie diese Zeile in Ihre Serverblöcke ein:
include includes.d/{{ item.key }}/cloudflare-origin-ca.conf;
Häufige Fehler
Keine Site verwendet Cloudflare Origin CA
Offensichtlich sollten Sie diese Rolle nicht ausführen, wenn Sie Cloudflare Origin CA nicht verwenden.
vault_cloudflare_origin_ca_key
ist nicht definiert
Verschlüsseln Sie Ihren Cloudflare Origin CA Schlüssel in group_vars/<environment>/vault.yml
. Siehe Rollenvariablen.
example.com
verwendet Cloudflare Origin CA, aber OCSP-Stapeln ist aktiviert
... Sie versuchen, die OCSP-Antworten mit Origin CA zu stapeln. Momentan wird OCSP mit Origin CA nicht unterstützt, daher sollten Sie die ssl_staping-Direktive für den Host entfernen, auf dem Sie das Origin CA-Zertifikat verwenden...
--- Cloudflare Unterstützung
Cloudflare Origin CA unterstützt kein OCSP-Stapeln. Deaktivieren Sie OCSP-Stapeln für alle Sites, die Cloudflare Origin CA verwenden. Siehe Rollenvariablen.
key_type
ist veraltet. Bitte entfernen Sie es von example.com
Um Fehlkonfigurationen zu vermeiden, sind die Optionen key_type
(ECDSA oder RSA) und key_size
(Bits) veraltet. Seit v0.8 erzeugt diese Rolle nur 521-Bit ECDSA-Schlüssel.
Wenn Sie zuvor CA-Zertifikate mit anderen Konfigurationen generiert haben:
- Entfernen Sie die CA-Zertifikate von den Servern.
- Widerrufen Sie die CA-Zertifikate über das Cloudflare-Dashboard.
- Provisionieren Sie die Server erneut.
key_size
ist veraltet. Bitte entfernen Sie es von example.com
Um Fehlkonfigurationen zu vermeiden, sind die Optionen key_type
(ECDSA oder RSA) und key_size
(Bits) veraltet. Seit v0.8 erzeugt diese Rolle nur 521-Bit ECDSA-Schlüssel.
Wenn Sie zuvor CA-Zertifikate mit anderen Konfigurationen generiert haben:
- Entfernen Sie die CA-Zertifikate von den Servern.
- Widerrufen Sie die CA-Zertifikate über das Cloudflare-Dashboard.
- Provisionieren Sie die Server erneut.
Nginx-Verzeichnisse nicht enthalten
Stellen Sie sicher, dass Sie roots/trellis@f2b8107 oder später haben.
400 Bad Request - Kein erforderliches SSL-Zertifikat gesendet
Symptome:
- Server gibt für alle Anfragen "400 Bad Request - Kein erforderliches SSL-Zertifikat gesendet" zurück.
- Nginx protokollierte "Client hat kein erforderliches SSL-Zertifikat gesendet, während die Header des clientseitigen Anforderungselementes gelesen wurden, client: [redacted], server:[redacted], anforderung: "GET / HTTP/1.1", host: "[redacted]""
ssl_verify_client on;
irgendwo in den Nginx-Konfigurationsdateien.- Verwendung von
client_cert_url
inwordpress_sites.yml
, d.h.: roots/trellis#869
Ursache:
Ihre Authentifizierten Ursprungsabzüge Konfiguration ist falsch.
Fakt:
Diese Rolle hat nichts mit authentifizierten Ursprungsabzügen oder ssl_verify_client
zu tun.
Lösung:
- Lesen Sie Einführung in Cloudflare Origin CA.
- Lesen Sie Authentifizierte Ursprungsabzüge.
- Verstehen Sie, dass diese Rolle Cloudflare Origin CA ist.
- Verstehen Sie, dass Cloudflare Origin CA und authentifizierte Ursprungsabzüge zwei verschiedene Dinge sind.
- Lesen Sie #34.
- Kontaktieren Sie den Cloudflare-Support, wenn Sie weitere Fragen haben.
FAQ
Warum werden nur 521-Bit ECDSA-Schlüssel erlaubt?
Ich nehme an, Sie möchten Authentifizierte Ursprungsabzüge mit Cloudflare einrichten. Ich würde ECDSA empfehlen, da elliptische Kurven die gleiche Sicherheit mit weniger Rechenaufwand bieten.
Erfahren Sie mehr über ECDSA: Der digitale Signaturalgorithmus einer besseren Internet. Der obige Artikel erwähnt auch: Laut den ECRYPT II Empfehlungen zur Schlüssellänge bietet ein 256-Bit elliptischer Kurven-Schlüssel denselben Schutz wie ein 3.248-Bit asymmetrischer Schlüssel. Typische RSA-Schlüssel in Website-Zertifikaten sind 2048-Bit. Daher denke ich, dass 256-Bit ECDSA eine gute Wahl sein wird.
--- Cloudflare Unterstützung, September 2017
Um Fehlkonfigurationen zu vermeiden, sind die Optionen key_type
(ECDSA oder RSA) und key_size
(Bits) veraltet. Seit v0.8 erzeugt diese Rolle nur 521-Bit ECDSA-Schlüssel.
Wenn Sie zuvor CA-Zertifikate mit anderen Konfigurationen generiert haben:
- Entfernen Sie die CA-Zertifikate von den Servern.
- Widerrufen Sie die CA-Zertifikate über das Cloudflare-Dashboard.
- Provisionieren Sie die Server erneut.
Warum wird der Cloudflare Origin CA-Schlüssel protokolliert, obwohl cloudflare_origin_ca_no_log
true
ist?
Bitte beachten Sie, dass die Verwendung des
no_log
-Attributs nicht verhindert, dass Daten angezeigt werden, wenn Ansible selbst über die UmgebungsvariableANSIBLE_DEBUG
debuggt.
Ist Cloudflare Origin CA perfekt?
Es sieht großartig aus. Wo finde ich noch mehr Dinge wie dies?
- Artikel auf Typist Techs Blog
- Tang Rufus' WordPress-Plugins auf wp.org
- Weitere Projekte auf Typist Techs GitHub-Profil
- Bleiben Sie dran bei Typist Techs Newsletter
- Folgen Sie Tang Rufus' Twitter-Konto
- Beauftragen Sie Tang Rufus, um Ihre nächste großartige Seite zu erstellen
Wo kann ich 5-Sterne-Bewertungen abgeben?
Danke! Es freut mich, dass es Ihnen gefällt. Es ist wichtig, dass ich weiß, dass jemand dieses Projekt nutzt. Bitte ziehen Sie in Erwägung:
- Tweeten etwas Gutes mit Nennung von @TangRufus
- ★ Stern Sie das GitHub-Repo
- 👀 beobachten Sie das GitHub-Repo
- Schreiben Sie Tutorials und Blogbeiträge
- Beauftragen Sie Typist Tech
Siehe auch
- WP Cloudflare Guard - Verbindung von WordPress mit Cloudflare-Firewall, Schutz Ihrer WordPress-Website auf DNS-Ebene. Automatisches Erstellen von Firewall-Regeln zum Blockieren gefährlicher IPs.
- Der Ursprung von Trellis Cloudflare Origin CA.
- Der Ursprung von Trellis Cloudflare Origin CA.
- Cloudflare Origin CA.
- Trellis SSL.
- Trellis Nginx Includes.
- Ansible Vault.
Tests durchführen
Führen Sie die Tests aus:
ansible-playbook -vvv -i 'localhost,' --syntax-check tests/test.yml
ansible-lint -vv .
Feedback
Bitte geben Sie Feedback! Wir möchten dieses Projekt so nützlich wie möglich machen. Bitte reicht ein Problem ein und weisen Sie darauf hin, was Ihnen gefällt und was nicht, oder forken Sie das Projekt und senden Sie Pull-Anfragen. Kein Problem ist zu klein.
Sicherheitsanfälligkeiten
Wenn Sie eine Sicherheitsanfälligkeit in diesem Projekt entdecken, senden Sie uns bitte eine E-Mail an [email protected]. Alle Sicherheitsanfälligkeiten werden umgehend behandelt.
Credits
Trellis Cloudflare Origin CA ist ein Projekt von Typist Tech und wird von Tang Rufus, freiberuflichem Entwickler, der beauftragt werden kann, gewartet.
Besonderer Dank an das Roots-Team, dessen Trellis dieses Projekt möglich gemacht hat.
Die vollständige Liste der Mitwirkenden finden Sie hier.
Lizenz
Trellis Cloudflare Origin CA wird unter der MIT-Lizenz veröffentlicht.
Add Cloudflare Origin CA to Trellis as a SSL provider
ansible-galaxy install TypistTech.trellis-cloudflare-origin-ca